Coordinate measuring machine

ABSTRACT

A coordinate measuring machine includes: a probe provided with a measurement piece; a moving mechanism that effects a scanning movement of the probe; and a host computer for controlling the moving mechanism. The host computer includes a displacement acquiring unit for acquiring a displacement of the moving mechanism and a measurement value calculating unit for calculating a measurement value. The measurement value calculating unit includes a correction-amount calculating unit for calculating a correction amount for correcting a position error of the measurement piece and a correcting unit for correcting the position error of the measurement piece based on the displacement of the moving mechanism and the correction amount. The correction-amount calculating unit calculates a translation-correction amount for correcting a translation error of the probe at a reference point on the probe and a rotation-correction amount for correcting a rotation error of the probe according to a rotation angle of the probe around the reference point and a length of the probe from the reference point to the measurement piece.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a coordinate measuring machine.

2. Description of Related Art

A coordinate measuring machine typically includes a probe having ameasurement piece that is moved along a surface of an object to bemeasured, a moving mechanism that holds and moves the probe whilescanning the surface and a controller for controlling the movingmechanism (see, for instance, Document 1: JP-A-2008-89578).

In such a coordinate measuring machine, a displacement of the movingmechanism is obtained to detect the position of the measurement piece,based on which a surface profile of the object and the like is measured.

However, since the moving mechanism is deformed on account ofacceleration caused during the scanning movement of the probe, an erroroccurs between the obtained displacement of the moving mechanism and theposition of the measurement piece, resulting in an error in themeasurement value of the coordinate measuring machine.

Accordingly, in a surface profile measuring instrument (coordinatemeasuring machine) disclosed in the Document 1, an acceleration of thescanning movement of the probe is calculated based on a scanning vector(a command value for the scanning movement of the probe). Then, acorrection-amount for correcting the position error of the measurementpiece caused on account of the deformation of the driving mechanism(moving mechanism) is calculated based on the calculated acceleration.

Incidentally, in order to accept various profiles of objects to bemeasured, a multiple number of probes are exchangeably attached to sucha typical coordinate measuring machine. Further, a probe that is rotatedrelative to the moving mechanism to change the attitude thereof has cometo be recently used.

In the surface profile measuring instrument disclosed in Document 1, thecorrection amount for correcting the position error of the measurementpiece is calculated based on the acceleration of the driving mechanismconsidering solely of the deformation of the driving mechanism.Accordingly, the same correction amount is calculated when, forinstance, probes of different lengths are used or when the attitude of aprobe is changed.

However, when probes of different lengths are used, the position of themeasurement piece is altered even when the deformation of the movingmechanism is equal. When the attitude of the probe is changed, theposition of the measurement piece relative to the driving mechanism isaltered. Accordingly, the surface profile measuring instrument disclosedin the Document 1 fails to calculate an appropriate correction amount inthe above circumstances, thus unable to properly correct an error in themeasurement value.

SUMMARY OF THE INVENTION

An object of the invention is to provide a coordinate measuring machinethat is capable of properly correcting an error in a measurement valueeven when probes of different lengths are used or when an attitude of aprobe is changed.

A coordinate measuring instrument according to an aspect of theinvention includes: a probe that has a measurement piece that movesalong a surface of an object; a moving mechanism that holds the probeand effects a scanning movement of the probe; and a controller thatcontrols the moving mechanism, the controller including: a displacementacquiring unit that acquires a displacement of the moving mechanism; acorrection-amount calculating unit that calculates a correction amountfor correcting a position error of the measurement piece caused by thescanning movement of the probe; and a correcting unit that corrects theposition error of the measurement piece based on the displacement of themoving mechanism acquired by the displacement acquiring unit and thecorrection amount calculated by the correction-amount calculating unit,the correction-amount calculating unit calculating: atranslation-correction amount for correcting a translation error of theprobe at a reference point on the probe; and a rotation-correctionamount for correcting a rotation error of the probe generated accordingto a rotation angle of the probe around the reference point and a lengthof the probe from the reference point to the measurement piece.

According to the above arrangement, since the coordinate measuringmachine includes the correction-amount calculating unit for separatelycalculating the translation-correction amount and therotation-correction amount for correcting the position error of themeasurement piece caused by the scanning movement of the probe, and thecorrecting unit for correcting the position error of the measurementpiece based on the translation-correction amount and therotation-correction amount calculated by the correction-amountcalculating unit, the position error of the measurement piece caused onaccount of the deformation of the moving mechanism can be corrected.Incidentally, the translation-correction amount and therotation-correction amount can be calculated based on the position,velocity, acceleration and the like of the scanning movement.

When the length or attitude of the probe differs (even with the samescale value), though the translation-correction amount calculated by thecorrection-amount calculating unit is approximately equal, therotation-correction amount becomes different according to the length orthe attitude of the probe. Accordingly, the correction-amountcalculating unit is arranged so that an appropriate correction amountcan be calculated even when the length of the probe differs or theattitude of the probe is changed. Consequently, the errors in themeasurement value can be properly corrected by the coordinate measuringmachine of the above aspect of the invention even in such cases.

Incidentally, the reference point on the probe is preferably a rotationcenter of the rotation of the probe relative to the moving mechanismwhen the attitude of the probe can be changed. By thus determining thereference point, the rotation-correction amount can be calculated bysynthesizing the rotation angle of the probe relative to the movingmechanism when the attitude is changed and the rotation angle of theprobe caused by the deformation of the moving mechanism.

In the above aspect, the correction-amount calculating unit preferablycalculates at least one of the translation-correction amount and therotation-correction amount based on an acceleration of the scanningmovement of the probe.

According to the above arrangement, the coordinate measuring machine iscapable of properly correcting an error in a measurement value even whenprobes of different length are used or when the attitude of the probe ischanged. Incidentally, the acceleration of the scanning movement of theprobe may be calculated based on a scanning vector as in the surfaceprofile measuring instrument disclosed in the Document 1, or,alternatively, may be measured using an acceleration sensor, positionsensor and the like.

In the above aspect of the invention, it is preferable that the movingmechanism includes a plurality of movement axes along which the scanningmovement of the probe is effected, and the correction-amount calculatingunit includes a phase difference correction-amount calculating unit thatcalculates a phase-difference correction-amount for correcting a phasedifference between the respective movement axes.

An error sometimes occurs on a measurement value of a coordinatemeasuring machine provided with a plurality of movement axes for thescanning movement of the probe on account of an influence of the phasedifference between the movement axes on account of a difference in theresponse characteristics of the respective movement axes. Specifically,when a command value is outputted so that the probe is circulated at aconstant angular velocity within a plane including two movement axes andthe scanning movement of the probe is effected by the moving mechanism,the measurement value may be influenced by the phase difference betweenthe two movement axes to show an ellipsoidal profile.

According to the above arrangement, since the coordinate measuringmachine includes the phase-difference correction-amount calculating unitfor calculating the phase-difference correction-amount for correctingthe phase difference between the respective movement axes, the phasedifference between the respective movement axes can be properlycorrected, thus further properly correcting the error in the measurementvalue.

In the above aspect of the invention, it is preferable that the phasedifference correction-amount calculating unit calculates thephase-difference correction-amount based on a frequency of the scanningmovement when the probe is circulated at a constant angular velocity.

The phase difference between the respective movement axes depends on thevelocity of the scanning movement of the probe, i.e. the frequency.

Since the phase difference correction-amount calculating unit calculatesthe phase difference correction-amount based on the frequency of thescanning movement when the probe is circulated at a constant angularvelocity, the coordinate measuring machine can properly correct thephase difference between the respective movement axes, thereby furtherproperly correcting the error in the measurement value. Incidentally,the frequency of the scanning movement of the probe may be calculatedbased on a scanning vector as in the surface profile measuringinstrument disclosed in the Document 1, or, alternatively, may bedetected using an acceleration sensor, position sensor and the like.

In the above aspect of the invention, it is preferable that thecorrection-amount calculating unit calculates the correction amountbased on the displacement of the moving mechanism acquired by thedisplacement acquiring unit.

In a coordinate measuring machine provided with a moving mechanismhaving a movement axis for a scanning movement of a probe, a positionerror of a measurement piece varies depending on the measurementposition, i.e. the displacement of the moving mechanism.

Since the correction-amount calculating unit of the above arrangementcalculates the correction amount based on the displacement of the movingmechanism obtained by the displacement acquiring unit, the coordinatemeasuring machine can properly correct the error in the measurementvalue.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration showing an entire coordinatemeasuring machine according to a first exemplary embodiment of theinvention.

FIG. 2 is a block diagram schematically showing an overall arrangementof the coordinate measuring machine according to the above exemplaryembodiment.

FIG. 3 is an enlarged schematic illustration showing a portion of aslider at which a probe is held in the above exemplary embodiment.

FIG. 4 is a block diagram showing a detailed arrangement of ameasurement value calculating unit according to the above exemplaryembodiment.

FIG. 5 is an illustration schematically showing a deformation of a slidemechanism caused on account of acceleration of a scanning movement inthe above exemplary embodiment.

FIG. 6 is a diagram showing a relationship between a swivel length andan X-axis error in the above exemplary embodiment, where an orientationof the probe is set in ±Y-axis direction.

FIG. 7 is an illustration showing a relationship among the accelerationof the scanning movement, an intercept of respective approximate curvesand angles.

FIG. 8 is an illustration showing a relationship among acorrection-amount calculating unit, displacement correcting unit anddisplacement synthesizing unit in the above exemplary embodiment.

FIG. 9A is an illustration showing a measurement result when a surfaceprofile of an object is measured without correcting a scale value by thedisplacement correcting unit in the above exemplary embodiment.

FIG. 9B is an illustration showing a measurement result when the surfaceprofile of the object is measured without correcting the scale value bythe displacement correcting unit in the above exemplary embodiment.

FIG. 10 is an illustration showing a measurement result when the surfaceprofile of the object is measured without correcting the scale value bythe displacement correcting unit in the above exemplary embodiment.

FIG. 11A is an illustration showing a measurement result when thesurface profile of the object is measured after correcting the scalevalue by the displacement correcting unit in the above exemplaryembodiment.

FIG. 11B is an illustration showing a measurement result when thesurface profile of the object is measured after correcting the scalevalue by the displacement correcting unit in the above exemplaryembodiment.

FIG. 12 is an illustration showing a measurement result when the surfaceprofile of the object is measured after correcting the scale value bythe displacement correcting unit in the above exemplary embodiment.

FIG. 13 is a block diagram showing a schematic arrangement of acoordinate measuring machine according to a second exemplary embodimentof the invention.

FIG. 14 is a diagram showing a relationship between a swivel length,where an orientation of the probe is set in the ±Y-axis direction, and aphase difference between movement axes in X and Z-axis directions.

FIG. 15 is an illustration showing a relationship among a frequency of ascanning movement, intercepts of respective approximate curves andangles in the above exemplary embodiment.

FIG. 16 is an illustration showing a relationship among acorrection-amount calculating unit, displacement correcting unit anddisplacement synthesizing unit in the above exemplary embodiment.

FIG. 17A is an illustration showing a measurement result when thesurface profile of the object is measured after correcting the scalevalue by the displacement correcting unit in the above exemplaryembodiment.

FIG. 17B is an illustration showing a measurement result when a surfaceprofile of an object is measured after correcting the scale value by thedisplacement correcting unit in the above exemplary embodiment.

FIG. 18 is an illustration showing a measurement result when the surfaceprofile of the object is measured after correcting the scale value bythe displacement correcting unit in the above exemplary embodiment.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENT(S) First Embodiment

A first exemplary embodiment of the invention will be described belowwith reference to the drawings.

Overall Arrangement of Coordinate Measuring Machine

FIG. 1 is a schematic illustration showing an entire coordinatemeasuring machine according to the first exemplary embodiment of theinvention. FIG. 2 is a block diagram showing an overall arrangement of acoordinate measuring machine 1. Incidentally, an upward direction isdefined as +Z-axis direction and two axes orthogonal to the Z-axis arerespectively defined as X-axis and Y-axis in FIG. 1, which is the samein the subsequent drawings.

As shown in FIG. 1, the coordinate measuring machine 1 includes: acoordinate measuring machine body 2; a motion controller 3 forcontrolling the drive of the coordinate measuring machine body 2; anoperating unit 4 that applies a command to the motion controller 3through an operation lever and the like to manually operate thecoordinate measuring machine body 2; a host computer 5 that feeds apredetermined command to the motion controller 3 and performs arithmeticprocessing such as form analysis of an object W to be measured that isplaced on the coordinate measuring machine body 2; and an input unit 61and an output unit 62 connected to the host computer 5. Incidentally,the input unit 61 inputs a measurement condition and the like of thecoordinate measuring machine 1 to the host computer 5. The output unit62 outputs the measurement result of the coordinate measuring machine 1.

The coordinate measuring machine body 2 includes: a probe 21 provided ata distal end (−Z-axis direction end) with a measurement piece 211A to bebrought into contact with the surface of the object W; a movingmechanism 22 that holds a base end (+Z-axis direction end) of the probe21 and moves the probe 21; and a measurement stage 23 on which themoving mechanism 22 is vertically provided. Incidentally, a referenceball 231 of which radius is known is placed on the measurement stage 23in order to calibrate the coordinate measuring machine body 2. Thereference ball 231 is adapted to be placed at a plurality of locationson the measurement stage 23.

The moving mechanism 22 includes: a slide mechanism 24 that holds thebase end of the probe 21 to allow a slide movement of the probe 21; anda driving mechanism 25 that drives the slide mechanism 24 to move theprobe 21.

The slide mechanism 24 includes: two beam supports 241 extending fromboth sides of the measurement stage 23 in the +Z-axis direction, thebeam supports 241 being slidable along the Y-axis direction; a beam 242supported by the beam supports 241 to extend along the X-axis direction;a tubular column 243 extending along the Z-axis direction, the column243 being slidable along the X-axis direction on the beam 242; and aslider 244 inserted into the inside of the column 243 in a mannerslidable along the Z-axis direction. Accordingly, the moving mechanism22 includes a plurality of movement axes for moving the probe 21 in theX, Y, Z-axis directions. The slider 244 holds the base end of the probe21 at an end in the −Z-axis direction thereof. A plurality of probes areprepared for the probe 21, one of which is selected to be held by theslider 244.

As shown in FIGS. 1 and 2, the driving mechanism 25 includes: a Y-axisdriving section 251Y that supports one of the beam supports 241 on+X-axis direction side in a manner slidably movable along the Y-axisdirection; an X-axis driving section 251X (not shown in FIG. 1) thatslidably moves the column 243 on the beam 242 in the X-axis direction;and a Z-axis driving section 251Z (not shown in FIG. 1) that slides theslider 244 in the column 243 to move the slider 244 in the Z-axisdirection.

As shown in FIG. 2, the X-axis driving section 251X, the Y-axis drivingsection 251Y and the Z-axis driving section 251Z are respectivelyprovided with an X-axis scale sensor 252X, a Y-axis scale sensor 252Yand a Z-axis scale sensor 252Z for detecting the position of the column243, the beam supports 241 and the slider 244 in the respectiveaxis-directions. Incidentally, the scale sensors 252X, 252Y and 252Z areposition sensors that output pulse signals corresponding to thedisplacement of the column 243, the beam supports 241 and the slider244.

FIG. 3 is an enlarged schematic illustration showing a portion of theslider 244 at which the probe 21 is held.

As shown in FIG. 3, the probe 21 includes a stylus 211 provided with themeasurement piece 211A at a distal end thereof; a support mechanism 212that supports a base end of the stylus 211 and a rotation mechanism 213that allows a rotation of the support mechanism 212 relative to theslider 244.

The support mechanism 212 supports the stylus 211 while forcing thestylus 211 in the respective X, Y and Z-axis directions to be located ata predetermined position and, when an external force is applied (i.e.when the stylus 211 comes into contact with the object W), allows adisplacement of the stylus 211 in the respective X, Y and Z-axisdirections within a predetermined range. As shown in FIG. 2, the supportmechanism 212 includes an X-axis probe sensor 212X, a Y-axis probesensor 212Y and a Z-axis probe sensor 212Z for detecting the position ofthe stylus 211 in the respective axis-directions. The probe sensors 212are position sensors that output pulse signals corresponding to thedisplacement of the stylus 211 in the respective axis-directions in thesame manner as the scale sensors 252.

The rotation mechanism 213 is a mechanism that rotates the supportmechanism 212 and the stylus 211 to alter the orientation of the probe21 (defined by a direction from the base end to the distal end of theprobe 21), i.e. the attitude of the probe 21. The rotation mechanism 213allows the rotation of the support mechanism 212 and the stylus 211around a reference point R with respect to the X, Y and Z-axes.

As shown in FIG. 2, the motion controller 3 includes: a drive controlunit 31 that controls the driving mechanism 25 in response to thecommand from the operating unit 4 or the host computer 5; and a counterunit 32 that counts the pulse signals outputted from the scale sensors252 and the probe sensors 212.

The counter unit 32 includes: a scale counter 321 that counts the pulsesignals outputted from the scale sensors 252 to measure the displacement(s_(X), s_(Y), s_(Z)) of the slide mechanism 24; and a probe counter 322that counts the pulse signals outputted from the probe sensors 212 tomeasure the displacement (p_(X), p_(Y), p_(Z)) of the stylus 211. Thedisplacement (referred to as a scale value S hereinafter) of the slidemechanism 24 and the displacement of the stylus 211 (referred to as aprobe value P hereinafter) respectively measured by the scale counter321 and the probe counter 322 are outputted to the host computer 5.

The host computer (controller) 5 includes a CPU (Central ProcessingUnit), memory and the like, which supplies a predetermined command tothe motion controller 3 to control the coordinate measuring machine body2. The host computer 5 is provided with a movement command unit 51, adisplacement acquiring unit 52, a measurement value calculating unit 53,a form analyzing unit 54 and a storage 55.

The movement command unit 51 provides a predetermined command to thedrive control unit 31 of the motion controller 3 to effect the scanningmovement of the slide mechanism 24 of the coordinate measuring machinebody 2. Specifically, the movement command unit 51 outputs a scanningvector as a command value indicating a moving direction and movingvelocity of the scanning movement of the probe 21 while the measurementpiece 211A is in contact with the surface of the object W. Incidentally,in this exemplary embodiment, the movement command unit 51 sequentiallyoutputs the scanning vector so that the measurement piece 211A is movedat a constant angular velocity along a side of the object W whiledepicting a circular locus based on the profile data of the object W ofa cylindrical shape.

The displacement acquiring unit 52 acquires the scale value S and theprobe value P measured respectively by the scale counter 321 and theprobe counter 322 at a predetermined sampling interval. In other words,the displacement acquiring unit 52 acquires the displacement of themoving mechanism 22.

The measurement value calculating unit 53 calculates a measurementvalue, i.e. the position of the measurement piece 211A based on thescale value S and the probe value P acquired by the displacementacquiring unit 52. Incidentally, the scale value S is adjusted toindicate the position of the measurement piece 211A when the probe 21 isoriented in the −Z-axis direction and the deformation of the slidemechanism 24 and the displacement of the stylus 211 within the supportmechanism 212 on account of the scanning movement are not occurred.

The form analyzing unit 54 calculates surface profile of the object W bysynthesizing the measurement value calculated by the measurement valuecalculating unit 53 and performs form analysis such as calculation oferror, distortion and the like by comparing calculated the surfaceprofile of the object W with the profile data.

The storage 55 stores the data used in the host computer 5, which is,for instance, measurement condition inputted through the input unit 61and measurement result outputted through the output unit 62.Incidentally, the measurement condition inputted through the input unit61 includes the profile data of the object W used by the movementcommand unit 51 and the form analyzing unit 54, and a sampling intervalfor acquiring the scale value S and the probe value P by thedisplacement acquiring unit 52.

Detailed Arrangement of Measurement Value Calculating Unit

FIG. 4 is a block diagram showing a detailed arrangement of themeasurement value calculating unit 53.

As shown in FIG. 4, the measurement value calculating unit 53 includes:a movement-estimating unit 7 including an acceleration-estimating unit71 for estimating an acceleration of the scanning movement of the movingmechanism 22; a correction-amount calculating unit 8 for calculating acorrection amount for correcting an error in the position of themeasurement piece 211A generated by the scanning movement of the probe21 based on the acceleration estimated by the acceleration-estimatingunit 71; a displacement correcting unit 531 for correcting the scalevalue S acquired by the displacement acquiring unit 52 based on thecorrection amount calculated by the correction-amount calculating unit8; and a displacement synthesizing unit 532 for calculating themeasurement value by synthesizing the scale value S corrected by thedisplacement correcting unit 531 and the probe value P acquired by thedisplacement acquiring unit 52.

The acceleration-estimating unit 71 includes: a nominal-model settingunit 711 in which a nominal model represented by a transfer functionfrom the output of the scanning vector by the movement command unit 51to the acquisition of the scale value S and the probe value P by thedisplacement acquiring unit 52; a position-estimating unit 712 forestimating the position of the probe 21 based on the scanning vector andthe nominal model; and a second-order differentiating unit 713 thatcalculates the acceleration of the scanning movement by applying asecond-order derivative on the position of the probe 21 estimated by theposition-estimating unit 712.

A nominal model G₁(s) of the moving mechanism 22 and a nominal modelG₂(s) of the probe 21 are set in the nominal-model setting unit 711. Aplurality of the nominal models G₂(S) of the probe 21 are stored inadvance in the storage 55 per each of the types of the probe, one ofwhich corresponding to the probe to be used can be selected by the inputunit 61.

The transfer function from the output of the scanning vector by themovement command unit 51 to the acquisition of the scale value S and theprobe value P by the displacement acquiring unit 52 is represented by aproduct G_(N) (=G₁(S)×G₂(S)) of the nominal model G₁(s) of the movingmechanism 22 and the nominal model G₂(S) of the probe 21.

Here, though the scanning vector, the scale value S and the like arerepresented for each of the respective X, Y and Z-axes, since theposition control system (a position control system in which the scalevalue S is fed back to the scanning vector) of the moving mechanism 22is adjusted so that all of time constants T of the transfer function inthe respective axes are equalized, the nominal model G_(N) is used asthe transfer function in common to all of the respectiveaxis-directions. Incidentally, the nominal model G_(N) can be obtainedby deriving a transfer function based on a design data of the movingmechanism 22 or a system identification based on experimental data.

For instance, when the nominal model G_(N) is a first-order delaysystem, the nominal model G_(N) can be represented by the followingformula (1), where K represents a gain and s represents a Laplaceoperator.

$\begin{matrix}{G_{N} = {K \cdot \frac{1}{1 + {T \cdot s}}}} & (1)\end{matrix}$

The position-estimating unit 712 estimates the position of the probe 21based on a command value C(c_(X), c_(Y), c_(Z)) of the scanning vectorand the nominal model G_(N). Specifically, as shown in the followingformulae (2-1) and (2-2), the position-estimating unit 712 calculatesthe product of the command value C and the nominal model G_(N) tocalculate the estimated position E(e_(X), e_(Y), e_(Z)) of the probe 21.

$\begin{matrix}{E = {G_{N} \cdot C}} & \left( {2\text{-}1} \right) \\\left. \begin{matrix}{e_{X} = {G_{N} \cdot c_{X}}} \\{e_{Y} = {G_{N} \cdot c_{Y}}} \\{e_{Z} = {G_{N} \cdot c_{Z}}}\end{matrix} \right\} & \left( {2\text{-}2} \right)\end{matrix}$

As shown in following formulae (3-1) and (3-2), the second-orderdifferentiating unit 713 applies a second-order derivative on theestimated position E of the probe 21 estimated by theposition-estimating unit 712 to calculate an acceleration A(a_(X),a_(Y), a_(Z)) of the scanning movement.

$\begin{matrix}{{A(t)} = \frac{^{2}{E(t)}}{t^{2}}} & \left( {3\text{-}1} \right) \\\left. \begin{matrix}{a_{X} = {\overset{¨}{e}}_{X}} \\{a_{Y} = {\overset{¨}{e}}_{Y}} \\{a_{Z} = {\overset{¨}{e}}_{Z}}\end{matrix} \right\} & \left( {3\text{-}2} \right)\end{matrix}$

The correction-amount calculating unit 8 includes an accelerationcorrection-amount calculating unit 81 and a rotation correction-amountcalculating unit 82.

The acceleration correction-amount calculating unit 81 calculates acorrection amount for correcting the position error of the measurementpiece 211A caused depending on the acceleration A of the scanningmovement.

FIG. 5 is an illustration schematically showing a deformation of theslide mechanism 24 caused on account of the acceleration A of thescanning movement.

As shown in FIG. 5, when the measurement piece 211A is circulated at aconstant angular velocity along a side of the object W to depict acircular locus, the slide mechanism 24 is deformed on account of theacceleration generated by the circular movement. Accordingly, theposition obtained by synthesizing the scale value S and the probe valueP is deviated from the actual position of the measurement piece 211A.

Then, the acceleration correction-amount calculating unit 81 calculatesa translation-correction amount CT(CT_(X), CT_(Y), CT_(Z)) forcorrecting a translation error of the probe 21 at the reference point Rlocated on the base end of the probe 21 and a rotation angle CO (Cθ_(X),Cθ_(Y), Cθ_(Z)) of the probe 21 around the reference point R accordingto the following formula (4) that is modeled as a quadratic expressionof the acceleration A. Incidentally, in this exemplary embodiment, therotation angles θ_(X), θ_(Y) and θ_(Z) are defined as an angle aroundthe respective X, Y and Z-axes (rightward rotation being defined asforward direction), where the rotation angles θ_(X), θ_(Y) and θ_(Z) arecounted from an origin respectively toward the +Y-axis direction, the+Z-axis direction and the +X-axis direction.

$\begin{matrix}{\begin{pmatrix}{CT}_{X} \\{CT}_{Y} \\{CT}_{Z} \\{C\; \theta_{X}} \\{C\; \theta_{Y}} \\{C\; \theta_{Z}}\end{pmatrix} = {\begin{pmatrix}{MI}_{X\; 2} & {MI}_{X\; 1} & 0 & 0 & 0 & 0 & {MI}_{X\; 0} \\0 & 0 & {MI}_{Y\; 2} & {MI}_{Y\; 1} & 0 & 0 & {MI}_{Y\; 0} \\0 & 0 & 0 & 0 & {MI}_{Z\; 2} & {MI}_{Z\; 1} & {MI}_{Z\; 0} \\0 & 0 & {M\; \theta_{{XY}\; 2}} & {M\; \theta_{{XY}\; 1}} & {M\; \theta_{{XZ}\; 2}} & {M\; \theta_{{XZ}\; 1}} & {{M\; \theta_{{XY}\; 0}} + {M\; \theta_{{XZ}\; 0}}} \\{M\; \theta_{{YX}\; 2}} & {M\; \theta_{{YX}\; 1}} & 0 & 0 & {M\; \theta_{{YZ}\; 2}} & {M\; \theta_{{YZ}\; 1}} & {{M\; \theta_{{YX}\; 0}} + {M\; \theta_{{YZ}\; 0}}} \\{M\; \theta_{{ZX}\; 2}} & {M\; \theta_{{ZX}\; 1}} & {M\; \theta_{{ZY}\; 2}} & {M\; \theta_{{ZY}\; 1}} & 0 & 0 & {{M\; \theta_{{ZX}\; 0}} + {M\; \theta_{{ZY}\; 0}}}\end{pmatrix}\begin{pmatrix}a_{X}^{2} \\a_{X} \\a_{Y}^{2} \\a_{Y} \\a_{Z}^{2} \\a_{Z} \\1\end{pmatrix}}} & (4)\end{matrix}$

However, the formula (4) is classified according to the followingconditional expressions (4-1) to (4-6). The θ_(X0), θ_(Y0) and θ_(Z0),of the respective conditional expressions represent the orientation ofthe probe 21 altered by the rotation mechanism 213. Incidentally, thedetails of the classification by the respective conditional expressions(4-1) to (4-6) and the calculation of the orientation of the probe 21will be described below.

$\begin{matrix}{{0 \leqq \theta_{X\; 0} < \pi}\left\{ \begin{matrix}{{M\; \theta_{{XY}\; 2}} = {M\; \theta_{{XY}\; 2\; P}}} \\{{M\; \theta_{{XY}\; 1}} = {M\; \theta_{{XY}\; 1P}}} \\{{M\; \theta_{{XY}\; 0}} = {M\; \theta_{{XY}\; 0P}}} \\{{M\; \theta_{{YX}\; 2}} = {M\; \theta_{{YX}\; 2P}}} \\{{M\; \theta_{{YX}\; 1}} = {M\; \theta_{{YX}\; 1P}}} \\{{M\; \theta_{{YX}\; 0}} = {M\; \theta_{{YX}\; 0P}}}\end{matrix} \right.} & \left( {4\text{-}1} \right) \\{{{- \pi} < \theta_{X\; 0} < 0}\left\{ \begin{matrix}{{M\; \theta_{{XY}\; 2}} = {M\; \theta_{{XY}\; 2\; M}}} \\{{M\; \theta_{{XY}\; 1}} = {M\; \theta_{{XY}\; 1M}}} \\{{M\; \theta_{{XY}\; 0}} = {M\; \theta_{{XY}\; 0M}}} \\{{M\; \theta_{{YX}\; 2}} = {M\; \theta_{{YX}\; 2M}}} \\{{M\; \theta_{{YX}\; 1}} = {M\; \theta_{{YX}\; 1M}}} \\{{M\; \theta_{{YX}\; 0}} = {M\; \theta_{{YX}\; 0M}}}\end{matrix} \right.} & \left( {4\text{-}2} \right) \\{{0 \leqq \theta_{Y\; 0} < \pi}\left\{ \begin{matrix}{{M\; \theta_{{YZ}\; 2}} = {M\; \theta_{{YZ}\; 2P}}} \\{{M\; \theta_{{YZ}\; 1}} = {M\; \theta_{{YZ}\; 1P}}} \\{{M\; \theta_{{YZ}\; 0}} = {M\; \theta_{{YZ}\; 0P}}} \\{{M\; \theta_{{ZY}\; 2}} = {M\; \theta_{{ZY}\; 2P}}} \\{{M\; \theta_{{ZY}\; 1}} = {M\; \theta_{{ZY}\; 1P}}} \\{{M\; \theta_{{ZY}\; 0}} = {M\; \theta_{{ZY}\; 0P}}}\end{matrix} \right.} & \left( {4\text{-}3} \right) \\{{{- \pi} < \theta_{Y\; 0} < 0}\left\{ \begin{matrix}{{M\; \theta_{{YZ}\; 2}} = {M\; \theta_{{YZ}\; 2M}}} \\{{M\; \theta_{{YZ}\; 1}} = {M\; \theta_{{YZ}\; 1M}}} \\{{M\; \theta_{{YZ}\; 0}} = {M\; \theta_{{YZ}\; 0M}}} \\{{M\; \theta_{{ZY}\; 2}} = {M\; \theta_{{ZY}\; 2M}}} \\{{M\; \theta_{{ZY}\; 1}} = {M\; \theta_{{ZY}\; 1M}}} \\{{M\; \theta_{{ZY}\; 0}} = {M\; \theta_{{ZY}\; 0M}}}\end{matrix} \right.} & \left( {4\text{-}4} \right) \\{{0 \leqq \theta_{Z\; 0} < \pi}\left\{ \begin{matrix}{{M\; \theta_{{XZ}\; 2}} = {M\; \theta_{{XZ}\; 2P}}} \\{{M\; \theta_{{XZ}\; 1}} = {M\; \theta_{{XZ}\; 1P}}} \\{{M\; \theta_{{XZ}\; 0}} = {M\; \theta_{{XZ}\; 0P}}} \\{{M\; \theta_{{ZX}\; 2}} = {M\; \theta_{{ZX}\; 2P}}} \\{{M\; \theta_{{ZX}\; 1}} = {M\; \theta_{{ZX}\; 1P}}} \\{{M\; \theta_{{ZX}\; 0}} = {M\; \theta_{{ZX}\; 0P}}}\end{matrix} \right.} & \left( {4\text{-}5} \right) \\{{{- \pi} < \theta_{Z\; 0} < 0}\left\{ \begin{matrix}{{M\; \theta_{{XZ}\; 2}} = {M\; \theta_{{XZ}\; 2M}}} \\{{M\; \theta_{{XZ}\; 1}} = {M\; \theta_{{XZ}\; 1M}}} \\{{M\; \theta_{{XZ}\; 0}} = {M\; \theta_{{XZ}\; 0M}}} \\{{M\; \theta_{{ZX}\; 2}} = {M\; \theta_{{ZX}\; 2M}}} \\{{M\; \theta_{{ZX}\; 1}} = {M\; \theta_{{ZX}\; 1M}}} \\{{M\; \theta_{{ZX}\; 0}} = {M\; \theta_{{ZX}\; 0M}}}\end{matrix} \right.} & \left( {4\text{-}6} \right)\end{matrix}$

Further, in accordance with the structure of the slide mechanism 24,since a coefficient vector (referred to as coefficient vector M_(A)hereinafter) multiplied with the acceleration A varies in the formula(4) depending on the measurement position, i.e. the scale value Sindicating the displacement of the slide mechanism 24, the coefficientvector is calculated by the following formula (5) that is modeled as aquadratic expression of the scale value S.

$\begin{matrix}{\begin{pmatrix}{MI}_{X\; 2} \\{MI}_{X\; 1} \\{MI}_{X\; 0} \\{MI}_{Y\; 2} \\{MI}_{Y\; 1} \\{MI}_{Y\; 0} \\{MI}_{Z\; 2} \\{MI}_{Z\; 1} \\{MI}_{Z\; 0} \\{M\; \theta_{{XY}\; 2P}} \\\vdots \\{M\; \theta_{{XY}\; 0M}} \\{M\; \theta_{{XZ}\; 2P}} \\\vdots \\{M\; \theta_{{XZ}\; 0M}} \\{M\; \theta_{{YX}\; 2\; P}} \\\vdots \\{M\; \theta_{{YX}\; 0M}} \\{M\; \theta_{{YZ}\; 2\; P}} \\\vdots \\{M\; \theta_{{YZ}\; 0M}} \\{M\; \theta_{{ZX}\; 2\; P}} \\\vdots \\{M\; \theta_{{ZX}\; 0M}} \\{M\; \theta_{{ZY}\; 2\; P}} \\\vdots \\{M\; \theta_{{ZY}\; 0M}}\end{pmatrix} = {\begin{pmatrix}{MI}_{X\; 2\_ 26} & {MI}_{X\; 2\_ 25} & {MI}_{X\; 2\_ 24} & \ldots & {MI}_{X\; 2\_ 3} & {MI}_{X\; 2\_ 2} & {MI}_{X\; 2\_ 1} & {MI}_{X\; 2\_ 0} \\{MI}_{X\; 1\_ 26} & {MI}_{X\; 1\_ 25} & {MI}_{X\; 1\_ 24} & \ldots & {MI}_{X\; 1\_ 3} & {MI}_{X\; 1\_ 2} & {MI}_{X\; 1\_ 1} & {MI}_{X\; 1\_ 0} \\{MI}_{X\; 0\_ 26} & {MI}_{X\; 0\_ 25} & {MI}_{X\; 0\_ 24} & \ldots & {MI}_{X\; 0\_ 3} & {MI}_{X\; 0\_ 2} & {MI}_{X\; 0\_ 1} & {MI}_{X\; 0\_ 0} \\{MI}_{Y\; 2\_ 26} & {MI}_{Y\; 2\_ 25} & {MI}_{Y\; 2\_ 24} & \ldots & {MI}_{Y\; 2\_ 3} & {MI}_{Y\; 2\_ 2} & {MI}_{Y\; 2\_ 1} & {MI}_{Y\; 2\_ 0} \\{MI}_{Y\; 1\_ 26} & {MI}_{Y\; 1\_ 25} & {MI}_{Y\; 1\_ 24} & \ldots & {MI}_{Y\; 1\_ 3} & {MI}_{Y\; 1\_ 2} & {MI}_{Y\; 1\_ 1} & {MI}_{Y\; 1\_ 0} \\{MI}_{Y\; 0\_ 26} & {MI}_{Y\; 0\_ 25} & {MI}_{Y\; 0\_ 24} & \ldots & {MI}_{Y\; 0\_ 3} & {MI}_{Y\; 0\_ 2} & {MI}_{Y\; 0\_ 1} & {MI}_{Y\; 0\_ 0} \\{MI}_{Z\; 2\_ 26} & {MI}_{Z\; 2\_ 25} & {MI}_{Z\; 2\_ 24} & \ldots & {MI}_{Y\; 2\_ 3} & {MI}_{Y\; 2\_ 2} & {MI}_{Y\; 2\_ 1} & {MI}_{Y\; 2\_ 0} \\{MI}_{Z\; 1\_ 26} & {MI}_{Z\; 1\_ 25} & {MI}_{Z\; 1\_ 24} & \ldots & {MI}_{Y\; 1\_ 3} & {MI}_{Y\; 1\_ 2} & {MI}_{Y\; 1\_ 1} & {MI}_{Y\; 1\_ 0} \\{MI}_{Z\; 0\_ 26} & {MI}_{Z\; 0\_ 25} & {MI}_{Z\; 0\_ 24} & \ldots & {MI}_{Y\; 0\_ 3} & {MI}_{Y\; 0\_ 2} & {MI}_{Y\; 0\_ 1} & {MI}_{Y\; 0\_ 0} \\{M\; \theta_{X\; Y\; 2\; P\; \_ 26}} & {M\; \theta_{{XY}\; 2P\; \_ 25}} & {M\; \theta_{{XY}\; 2P\; \_ 24}} & \ldots & {M\; \theta_{{XY}\; 2P\; \_ 3}} & {M\; \theta_{{XY}\; 2P\; \_ 2}} & {M\; \theta_{{XY}\; 2P\; \_ 1}} & {M\; \theta_{{XY}\; 2P\; \_ 0}} \\\vdots & \vdots & \vdots & \ldots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{XY}\; 0M\; \_ 26}} & {M\; \theta_{{XY}\; 0M\; \_ 25}} & {M\; \theta_{{XY}\; 0M\; \_ 24}} & \ldots & {M\; \theta_{{XY}\; 0M\; \_ 3}} & {M\; \theta_{{XY}\; 0M\; \_ 2}} & {M\; \theta_{{XY}\; 0M\mspace{11mu} \_ 1}} & {M\; \theta_{{XY}\; 0M\; \_ 0}} \\{M\; \theta_{{XZ}\; 2\mspace{11mu} P\; \_ 26}} & {M\; \theta_{{XZ}\; 2\; P\; \_ 25}} & {M\; \theta_{{XZ}\; 2P\; \_ 24}} & \ldots & {M\; \theta_{{XZ}\; 2P\; \_ 3}} & {M\; \theta_{{XZ}\; 2P\; \_ 2}} & {M\; \theta_{{XZ}\; 2P\; \_ 1}} & {M\; \theta_{{XZ}\; 2P\; \_ 0}} \\\vdots & \vdots & \vdots & \ldots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{XZ}\; 0M\; \_ 26}} & {M\; \theta_{{XZ}\; 0M\; \_ 25}} & {M\; \theta_{{XZ}\; 0\; M\; \_ 24}} & \ldots & {M\; \theta_{{XZ}\; 0M\; \_ 3}} & {M\; \theta_{{XZ}\; 0M\; \_ 2}} & {M\; \theta_{{XZ}\; 0\; M\; \_ 1}} & {M\; \theta_{{XZ}\; 0M\; \_ 0}} \\{M\; \theta_{{YX}\; 2P\; \_ 26}} & {M\; \theta_{{YX}\; 2P\; \_ 25}} & {M\; \theta_{{YX}\; 2\; P\; \_ 24}} & \ldots & {M\; \theta_{{YX}\; 2P\; \_ 3}} & {M\; \theta_{{YX}\; 2P\; \_ 2}} & {M\; \theta_{{YX}\; 2\; P\; \_ 1}} & {M\; \theta_{{YX}\; 2P\; \_ 0}} \\\vdots & \vdots & \vdots & \ldots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{YX}\; 0M\; \_ 26}} & {M\; \theta_{{YX}\; 0M\; \_ 25}} & {M\; \theta_{{YX}\; 0\; M\; \_ 24}} & \ldots & {M\; \theta_{{YX}\; 0M\; \_ 3}} & {M\; \theta_{{YX}\; 0M\; \_ 2}} & {M\; \theta_{{YX}\; 0\; M\; \_ 1}} & {M\; \theta_{{YX}\; 0M\; \_ 0}} \\{M\; \theta_{{YZ}\; 2P\; \_ 26}} & {M\; \theta_{{YZ}\; 2P\; \_ 25}} & {M\; \theta_{{YZ}\; 2\; P\; \_ 24}} & \ldots & {M\; \theta_{{YZ}\; 2P\; \_ 3}} & {M\; \theta_{{YZ}\; 2P\; \_ 2}} & {M\; \theta_{{YZ}\; 2\; P\; \_ 1}} & {M\; \theta_{{YZ}\; 2P\; \_ 0}} \\\vdots & \vdots & \vdots & \ldots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{YZ}\; 0M\; \_ 26}} & {M\; \theta_{{YZ}\; 0M\; \_ 25}} & {M\; \theta_{{YZ}\; 0\; M\; \_ 24}} & \ldots & {M\; \theta_{{YZ}\; 0M\; \_ 3}} & {M\; \theta_{{YZ}\; 0M\; \_ 2}} & {M\; \theta_{{YZ}\; 0\; M\; \_ 1}} & {M\; \theta_{{YZ}\; 0M\; \_ 0}} \\{M\; \theta_{{ZX}\; 2\; P\; \_ 26}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 25}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 24}} & \ldots & {M\; \theta_{{ZX}\; 2\; P\; \_ 3}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 2}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 1}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 0}} \\\vdots & \vdots & \vdots & \ldots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{ZX}\; 0\; M\; \_ 26}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 25}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 24}} & \ldots & {M\; \theta_{{ZX}\; 0\; M\; \_ 3}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 2}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 1}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 0}} \\{M\; \theta_{{ZY}\; 2\; P\; \_ 26}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 25}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 24}} & \ldots & {M\; \theta_{{ZY}\; 2\; P\; \_ 3}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 2}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 1}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 0}} \\\vdots & \vdots & \vdots & \ldots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{ZY}\; 0\; M\; \_ 26}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 25}} & {M\; \theta_{{ZY}\; 0M\; \_ 24}} & \ldots & {M\; \theta_{{ZY}\; 0\; M\; \_ 3}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 2}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 1}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 0}}\end{pmatrix}\begin{pmatrix}{s_{X}^{2} \cdot s_{Y}^{2} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Y}^{2} \cdot s_{Z}} \\{s_{X}^{2} \cdot s_{Y} \cdot s_{Z}^{2}} \\{s_{X} \cdot s_{Y}^{2} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Y} \cdot s_{Z}} \\{s_{X} \cdot s_{Y}^{2} \cdot s_{Z}} \\{s_{X} \cdot s_{Y} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Y}^{2}} \\{s_{Y}^{2} \cdot s_{Z}^{2}} \\{s_{Z}^{2} \cdot s_{X}^{2}} \\{s_{X}^{2} \cdot s_{Y}} \\{s_{X}^{2} \cdot s_{Z}} \\{s_{Y}^{2} \cdot s_{X}} \\{s_{Y}^{2} \cdot s_{Z}} \\{s_{Z}^{2} \cdot s_{X}} \\{s_{Z}^{2} \cdot s_{Y}} \\{s_{X} \cdot s_{Y} \cdot s_{Z}} \\s_{X}^{2} \\s_{Y}^{2} \\s_{Z}^{2} \\{s_{X} \cdot s_{Y}} \\{s_{Y} \cdot s_{Z}} \\{s_{Z} \cdot s_{X}} \\s_{X} \\s_{Y} \\s_{Z} \\1\end{pmatrix}}} & (5)\end{matrix}$

In the coordinate measuring machine body 2 of this exemplary embodiment,since the two beam supports 241 are slid along the Y-axis direction, theposition error of the measurement piece 211A caused depending on theacceleration A of the scanning movement is less likely to be affected bythe scale value s_(Y) in the Y-axis direction. Accordingly, instead ofthe formula (5), the coefficient vector M_(A) is calculated using thefollowing formula (5-1) in which the coefficient multiplied with thescale value s_(Y) is 0. Incidentally, in the formula (5-1), thecoefficient vector (referred to as a coefficient vector M_(S)hereinafter) multiplied with the scale value S is stored in advance inthe storage 55. With the use of the formula (5-1) instead of the formula(5), the size of the coefficient vector M_(S) stored in the storage 55can be reduced, thus curtailing the used area of the storage 55.

$\begin{matrix}{\begin{pmatrix}{MI}_{X\; 2} \\{MI}_{X\; 1} \\{MI}_{X\; 0} \\{MI}_{Y\; 2} \\{MI}_{Y\; 1} \\{MI}_{Y\; 0} \\{MI}_{Z\; 2} \\{MI}_{Z\; 1} \\{MI}_{Z\; 0} \\{M\; \theta_{{XY}\; 2P}} \\\vdots \\{M\; \theta_{{XY}\; 0M}} \\{M\; \theta_{{XZ}\; 2P}} \\\vdots \\{M\; \theta_{{XZ}\; 0M}} \\{M\; \theta_{{YX}\; 2\; P}} \\\vdots \\{M\; \theta_{{YX}\; 0M}} \\{M\; \theta_{{YZ}\; 2\; P}} \\\vdots \\{M\; \theta_{{YZ}\; 0M}} \\{M\; \theta_{{ZX}\; 2\; P}} \\\vdots \\{M\; \theta_{{ZX}\; 0M}} \\{M\; \theta_{{ZY}\; 2\; P}} \\\vdots \\{M\; \theta_{{ZY}\; 0M}}\end{pmatrix} = {\begin{pmatrix}{MI}_{X\; 2\_ 8} & {MI}_{X\; 2\_ 7} & {MI}_{X\; 2\_ 6} & {MI}_{X\; 2\_ 5} & {MI}_{X\; 2\_ 4} & {MI}_{X\; 2\_ 3} & {MI}_{X\; 2\_ 2} & {MI}_{X\; 2\_ 1} & {MI}_{X\; 2\_ 0} \\{MI}_{X\; 1\_ 8} & {MI}_{X\; 1\_ 7} & {MI}_{X\; 1\_ 6} & {MI}_{X\; 1\_ 5} & {MI}_{X\; 1\_ 4} & {MI}_{X\; 1\_ 3} & {MI}_{X\; 1\_ 2} & {MI}_{X\; 1\_ 1} & {MI}_{X\; 1\_ 0} \\{MI}_{X\; 0\_ 8} & {MI}_{X\; 0\_ 7} & {MI}_{X\; 0\_ 6} & {MI}_{X\; 0\_ 5} & {MI}_{X\; 0\_ 4} & {MI}_{X\; 0\_ 3} & {MI}_{X\; 0\_ 2} & {MI}_{X\; 0\_ 1} & {MI}_{X\; 0\_ 0} \\{MI}_{Y\; 2\_ 8} & {MI}_{Y\; 2\_ 7} & {MI}_{Y\; 2\_ 6} & {MI}_{Y\; 2\_ 5} & {MI}_{Y\; 2\_ 4} & {MI}_{Y\; 2\_ 3} & {MI}_{Y\; 2\_ 2} & {MI}_{Y\; 2\_ 1} & {MI}_{Y\; 2\_ 0} \\{MI}_{Y\; 1\_ 8} & {MI}_{Y\; 1\_ 7} & {MI}_{Y\; 1\_ 6} & {MI}_{Y\; 1\_ 5} & {MI}_{Y\; 1\_ 4} & {MI}_{Y\; 1\_ 3} & {MI}_{Y\; 1\_ 2} & {MI}_{Y\; 1\_ 1} & {MI}_{Y\; 1\_ 0} \\{MI}_{Y\; 0\_ 8} & {MI}_{Y\; 0\_ 7} & {MI}_{Y\; 0\_ 6} & {MI}_{Y\; 0\_ 5} & {MI}_{Y\; 0\_ 4} & {MI}_{Y\; 0\_ 3} & {MI}_{Y\; 0\_ 2} & {MI}_{Y\; 0\_ 1} & {MI}_{Y\; 0\_ 0} \\{MI}_{Z\; 2\_ 8} & {MI}_{Z\; 2\_ 7} & {MI}_{Z\; 2\_ 6} & {MI}_{Y\; 2\_ 5} & {MI}_{Y\; 2\_ 4} & {MI}_{Y\; 2\_ 3} & {MI}_{Y\; 2\_ 2} & {MI}_{Y\; 2\_ 1} & {MI}_{Y\; 2\_ 0} \\{MI}_{Z\; 1\_ 8} & {MI}_{Z\; 1\_ 7} & {MI}_{Z\; 1\_ 6} & {MI}_{Y\; 1\_ 5} & {MI}_{Y\; 1\_ 4} & {MI}_{Y\; 1\_ 3} & {MI}_{Y\; 1\_ 2} & {MI}_{Y\; 1\_ 1} & {MI}_{Y\; 1\_ 0} \\{MI}_{Z\; 0\_ 8} & {MI}_{Z\; 0\_ 7} & {MI}_{Z\; 0\_ 6} & {MI}_{Y\; 0\_ 5} & {MI}_{Y\; 0\_ 4} & {MI}_{Y\; 0\_ 3} & {MI}_{Y\; 0\_ 2} & {MI}_{Y\; 0\_ 1} & {MI}_{Y\; 0\_ 0} \\{M\; \theta_{X\; Y\; 2\; P\; \_ 8}} & {M\; \theta_{{XY}\; 2P\; \_ 7}} & {M\; \theta_{{XY}\; 2P\; \_ 6}} & {M\; \theta_{{XY}\; 2P\; \_ 5}} & {M\; \theta_{{XY}\; 2P\; \_ 4}} & {M\; \theta_{{XY}\; 2\; P\; \_ 3}} & {M\; \theta_{{XY}\; 2\; P\; \_ 2}} & {M\; \theta_{{XY}\; 2P\; \_ 1}} & {M\; \theta_{{XY}\; 2P\; \_ 0}} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{XY}\; 0M\; \_ 8}} & {M\; \theta_{{XY}\; 0M\; \_ 7}} & {M\; \theta_{{XY}\; 0M\; \_ 6}} & {M\; \theta_{{XY}\; 0M\; \_ 5}} & {M\; \theta_{{XY}\; 0M\; \_ 4}} & {M\; \theta_{{XY}\; 0M\; \_ 3}} & {M\; \theta_{{XY}\; 0M\; \_ 2}} & {M\; \theta_{{XY}\; 0M\mspace{11mu} \_ 1}} & {M\; \theta_{{XY}\; 0M\; \_ 0}} \\{M\; \theta_{{XZ}\; 2\mspace{11mu} P\; \_ 8}} & {M\; \theta_{{XZ}\; 2\; P\; \_ 7}} & {M\; \theta_{{XZ}\; 2P\; \_ 6}} & {M\; \theta_{{XZ}\; 2P\; \_ 5}} & {M\; \theta_{{XZ}\; 2P\; \_ 4}} & {M\; \theta_{{XZ}\; 2P\; \_ 3}} & {M\; \theta_{{XZ}\; 2P\; \_ 2}} & {M\; \theta_{{XZ}\; 2P\; \_ 1}} & {M\; \theta_{{XZ}\; 2P\; \_ 0}} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{XZ}\; 0M\; \_ 8}} & {M\; \theta_{{XZ}\; 0M\; \_ 7}} & {M\; \theta_{{XZ}\; 0\; M\; \_ 6}} & {M\; \theta_{{XZ}\; 0M\; \_ 5}} & {M\; \theta_{{XZ}\; 0M\; \_ 4}} & {M\; \theta_{{XZ}\; 0M\; \_ 3}} & {M\; \theta_{{XZ}\; 0M\; \_ 2}} & {M\; \theta_{{XZ}\; 0\; M\; \_ 1}} & {M\; \theta_{{XZ}\; 0M\; \_ 0}} \\{M\; \theta_{{YX}\; 2P\; \_ 8}} & {M\; \theta_{{YX}\; 2P\; \_ 7}} & {M\; \theta_{{YX}\; 2\; P\; \_ 6}} & {M\; \theta_{{YX}\; 2P\; \_ 5}} & {M\; \theta_{{YX}\; 2P\; \_ 4}} & {M\; \theta_{{YX}\; 2P\; \_ 3}} & {M\; \theta_{{YX}\; 2P\; \_ 2}} & {M\; \theta_{{YX}\; 2\; P\; \_ 1}} & {M\; \theta_{{YX}\; 2P\; \_ 0}} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{YX}\; 0M\; \_ 8}} & {M\; \theta_{{YX}\; 0M\; \_ 7}} & {M\; \theta_{{YX}\; 0\; M\; \_ 6}} & {M\; \theta_{{YX}\; 0M\; \_ 5}} & {M\; \theta_{{YX}\; 0M\; \_ 4}} & {M\; \theta_{{YX}\; 0M\; \_ 3}} & {M\; \theta_{{YX}\; 0M\; \_ 2}} & {M\; \theta_{{YX}\; 0\; M\; \_ 1}} & {M\; \theta_{{YX}\; 0M\; \_ 0}} \\{M\; \theta_{{YZ}\; 2P\; \_ 8}} & {M\; \theta_{{YZ}\; 2P\; \_ 7}} & {M\; \theta_{{YZ}\; 2\; P\; \_ 6}} & {M\; \theta_{{YZ}\; 2P\; \_ 5}} & {M\; \theta_{{YZ}\; 2P\; \_ 4}} & {M\; \theta_{{YZ}\; 2P\; \_ 3}} & {M\; \theta_{{YZ}\; 2P\; \_ 2}} & {M\; \theta_{{YZ}\; 2\; P\; \_ 1}} & {M\; \theta_{{YZ}\; 2P\; \_ 0}} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{YZ}\; 0M\; \_ 8}} & {M\; \theta_{{YZ}\; 0M\; \_ 7}} & {M\; \theta_{{YZ}\; 0\; M\; \_ 6}} & {M\; \theta_{{YZ}\; 0M\; \_ 5}} & {M\; \theta_{{YZ}\; 0M\; \_ 4}} & {M\; \theta_{{YZ}\; 0M\; \_ 3}} & {M\; \theta_{{YZ}\; 0M\; \_ 2}} & {M\; \theta_{{YZ}\; 0\; M\; \_ 1}} & {M\; \theta_{{YZ}\; 0M\; \_ 0}} \\{M\; \theta_{{ZX}\; 2\; P\; \_ 8}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 7}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 6}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 5}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 4}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 3}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 2}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 1}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 0}} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{ZX}\; 0\; M\; \_ 8}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 7}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 6}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 5}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 4}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 3}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 2}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 1}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 0}} \\{M\; \theta_{{ZY}\; 2\; P\; \_ 8}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 7}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 6}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 5}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 4}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 3}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 2}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 1}} & {M\; \theta_{{ZY}\; 2\; P\; \_ 0}} \\\vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\{M\; \theta_{{ZY}\; 0\; M\; \_ 8}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 7}} & {M\; \theta_{{ZY}\; 0M\; \_ 6}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 5}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 4}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 3}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 2}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 1}} & {M\; \theta_{{ZY}\; 0\; M\; \_ 0}}\end{pmatrix}\begin{pmatrix}{s_{X}^{2} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Z}} \\{s_{X} \cdot s_{Z}^{2}} \\s_{X}^{2} \\{s_{X} \cdot s_{Z}} \\s_{Z}^{2} \\s_{X} \\s_{Z} \\1\end{pmatrix}}} & \left( {5\text{-}1} \right)\end{matrix}$

Next, the calculation of the coefficient vector M_(S) in the formula(5-1) will be described below.

The coefficient vector MS is calculated based on an error ER(er_(X),er_(Y), er_(Z)) in the respective X, Y and Z-axis directions. The errorER is calculated by measuring the position of the measurement piece 211Awhen the probe 21 is subjected to a scanning movement at a constantangular velocity while the measurement piece 211A is in contact with thereference ball 231 and subtracting a radius of the reference ball 231from a radius of a circle obtained by the measurement positions of themeasurement piece 211A.

In this exemplary embodiment, the error ER is calculated while changingthe orientation of the probe 21 (the ±X-axis direction, ±Y-axisdirection and −Z-axis direction), the measurement position (s_(X),s_(Y), s_(Z)), the length from the reference point R to the measurementpiece 211A (referred to as a swivel length L) and the velocity of thescanning movement.

The orientation of the probe 21 in the +Z-axis direction is not set inthe above because the probe 21 cannot be oriented in the +Z-axisdirection on account of the structure of the coordinate measuringmachine body 2 (see FIG. 1). When the orientation of the probe 21 is setin the +X-axis direction, the error er_(Y) and er_(Z) are calculated byconducting the scanning movement in a YZ plane. When the orientation ofthe probe 21 is set in the ±Y-axis direction, the error er_(X) ander_(Z) are calculated by conducting the scanning movement in an XZplane. When the orientation of the probe 21 is set in the −Z-axisdirection, the error er_(X) and er_(Y) are calculated by conducting thescanning movement in an XY plane.

FIG. 6 is a diagram showing a relationship between the swivel length Land the error er_(X) in the X-axis direction, where an orientation ofthe probe 21 is taken along ±Y-axis direction. Incidentally, in FIG. 6,the horizontal axis is the swivel length l_(Y) (the swivel lengths inthe respective X, Y and Z-axis directions respectively being l_(X),l_(Y) and l_(Z)) and the vertical axis is the error er_(X). Further,FIG. 6 shows the relationship at a constant measurement position and aconstant scanning movement velocity.

As shown in FIG. 6, the error er_(X) increases in accordance with theincrease in the absolute value of the swivel length l_(Y). This isbecause the error caused according to the rotation angle Cθ_(Z)depending on the acceleration A of the scanning movement increases.Accordingly, when an intercept and an inclination are calculated bysubjecting the respective values of the measured error er_(X) to astraight-line approximation, it can be considered that the interceptrepresents the translation error caused depending on the acceleration Aof the scanning movement and the inclination represents the error causeddepending on the acceleration A of the scanning movement in accordancewith the rotation angle Cθ_(Z).

Thus, an inclination S_(P) of an approximate curve AP_(P) when the probe21 is oriented in the +Y-axis direction, an inclination S_(M) of anapproximate curve AP_(M) when the probe 21 is oriented in the −Y-axisdirection and an intercept I of average of intercepts I_(P) and I_(M) ofthe approximate curves AP_(P) and AP_(M) are respectively calculated.Then, the inclinations S_(P) and S_(M) of the approximate curves AP_(P)and AP_(M) are converted into the angles θ_(P) and θ_(M) according tothe following formula (6).

θ_(P)=tan⁻¹(S _(P))

θ_(M)=tan⁻¹(S _(M))  (6)

FIG. 7 is an illustration showing a relationship among the accelerationa_(X) of the scanning movement, the intercept I of the respectiveapproximate curves AP_(P) and AP_(M) and the angles θ_(P) and θ_(M).Specifically, FIG. 7 shows the intercept I and the angles θ_(P) andθ_(M) when the error er_(X) is measured at a constant measurementposition while varying the velocity of the scanning movement. In FIG. 7,circular dots represent the intercept I, triangles represent the angleθ_(P) and rectangular dots represent the angle θ_(M).

As shown in FIG. 7, the intercept I and the angles θ_(P) and θ_(M) varyin accordance with the increase in the acceleration a_(X) of thescanning movement. This is because the deformation of the slidemechanism 24 increases in accordance with the increase in theacceleration a_(x) of the scanning movement.

Accordingly, the intercept I and the angles θ_(P) and θ_(M) can berepresented by the following formula (7) that is modeled as a quadraticexpression of the acceleration a_(x).

$\begin{matrix}{\begin{pmatrix}I \\\theta_{P} \\\theta_{M}\end{pmatrix} = {\begin{pmatrix}{MI}_{X\; 2} & {MI}_{X\; 1} & {M\; I_{X\; 0}} \\{M\; \theta_{{ZX}\; 2\; P}} & {M\; \theta_{{ZX}\; 1\; P}} & {M\; \theta_{{ZX}\; 0\; P}} \\{M\; \theta_{{ZX}\; 2\; M}} & {M\; \theta_{{ZX}\; 1\; M}} & {M\; \theta_{{ZX}\; 0M}}\end{pmatrix}\begin{pmatrix}a_{X}^{2} \\a_{X} \\1\end{pmatrix}}} & (7)\end{matrix}$

Incidentally, the suffix (ZX) of Mθ indicates that the coefficientvector is of the error in the X-axis direction based on the rotationangle θ_(Z).

Further, on account of the structure of the slide mechanism 24, sincethe coefficient vector multiplied with the acceleration a_(x) varies inthe formula (7) depending on the scale value S(s_(X), s_(Z)) asdescribed above, the coefficient vector is represented by the followingformula (8) that is modeled as a quadratic expression of the scale valueS.

$\begin{matrix}{\begin{pmatrix}{MI}_{X\; 2} \\{MI}_{X\; 1} \\{MI}_{X\; 0} \\{M\; \theta_{{ZX}\; 2\; P}} \\{M\; \theta_{{ZX}\; 1\; P}} \\{M\; \theta_{{ZX}\; 0\; P}} \\{M\; \theta_{{ZX}\; 2\; M}} \\{M\; \theta_{{ZX}\; 1\; M}} \\{M\; \theta_{{ZX}\; 0\; M}}\end{pmatrix} = {\left( \begin{matrix}{MI}_{X\; 2\_ 8} & {MI}_{X\; 2\_ 7} & {MI}_{X\; 2\_ 6} & {MI}_{X\; 2\_ 5} & {MI}_{X\; 2\_ 4} & {MI}_{X\; 2\_ 3} & {MI}_{X\; 2\_ 2} & {MI}_{X\; 2\_ 1} & {MI}_{X\; 2\_ 0} \\{MI}_{X\; 1\_ 8} & {MI}_{X\; 1\_ 7} & {MI}_{X\; 1\_ 6} & {MI}_{X\; 1\_ 5} & {MI}_{X\; 1\_ 4} & {MI}_{X\; 1\_ 3} & {MI}_{X\; 1\_ 2} & {MI}_{X\; 1\_ 1} & {MI}_{X\; 1\_ 0} \\{MI}_{X\; 0\_ 8} & {MI}_{X\; 0\_ 7} & {MI}_{X\; 0\_ 6} & {MI}_{X\; 0\_ 5} & {MI}_{X\; 0\_ 4} & {MI}_{X\; 0\_ 3} & {MI}_{X\; 0\_ 2} & {MI}_{X\; 0\_ 1} & {MI}_{X\; 0\_ 0} \\{M\; \theta_{{ZX}\; 2\; P\; \_ 8}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 7}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 6}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 5}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 4}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 3}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 2}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 1}} & {M\; \theta_{{ZX}\; 2\; P\; \_ 0}} \\{M\; \theta_{{ZX}\; 1\; P\; \_ 8}} & {M\; \theta_{{ZX}\; 1\; P\; \_ 7}} & {M\; \theta_{{ZX}\; 1\; P\; \_ 6}} & {M\; \theta_{{ZX}\; 1\; P\; \_ 5}} & {M\; \theta_{{ZX}\; 1\; P\; \_ 4}} & {M\; \theta_{{ZX}\; 1\; P\; \_ 3}} & {M\; \theta_{{ZX}\; 1\; P\; \_ 2}} & {M\; \theta_{{ZX}\; 1\; P\; \_ 1}} & {M\; \theta_{{ZX}\; 1\; P\; \_ 0}} \\{M\; \theta_{{ZX}\; 0\; P\; \_ 8}} & {M\; \theta_{{ZX}\; 0\; P\; \_ 7}} & {M\; \theta_{{ZX}\; 0\; P\; \_ 6}} & {M\; \theta_{{ZX}\; 0\; P\; \_ 5}} & {M\; \theta_{{ZX}\; 0\; P\; \_ 4}} & {M\; \theta_{{ZX}\; 0\; P\; \_ 3}} & {M\; \theta_{{ZX}\; 0\; P\; \_ 2}} & {M\; \theta_{{ZX}\; 0\; P\; \_ 1}} & {M\; \theta_{{ZX}\; 0\; P\; \_ 0}} \\{M\; \theta_{{ZX}\; 2\; M\; \_ 8}} & {M\; \theta_{{ZX}\; 2\; M\; \_ 7}} & {M\; \theta_{{ZX}\; 2\; M\; \_ 6}} & {M\; \theta_{{ZX}\; 2\; M\; \_ 5}} & {M\; \theta_{{ZX}\; 2\; M\; \_ 4}} & {M\; \theta_{{ZX}\; 2\; M\; \_ 3}} & {M\; \theta_{{ZX}\; 2\; M\; \_ 2}} & {M\; \theta_{{ZX}\; 2\; M\; \_ 1}} & {M\; \theta_{{ZX}\; 2\; M\; \_ 0}} \\{M\; \theta_{{ZX}\; 1\; M\; \_ 8}} & {M\; \theta_{{ZX}\; 1\; M\; \_ 7}} & {M\; \theta_{{ZX}\; 1\; M\; \_ 6}} & {M\; \theta_{{ZX}\; 1\; M\; \_ 5}} & {M\; \theta_{{ZX}\; 1\; M\; \_ 4}} & {M\; \theta_{{ZX}\; 1\; M\; \_ 3}} & {M\; \theta_{{ZX}\; 1\; M\; \_ 2}} & {M\; \theta_{{ZX}\; 1\; M\; \_ 1}} & {M\; \theta_{{ZX}\; 1\; M\; \_ 0}} \\{M\; \theta_{{ZX}\; 0\; M\; \_ 8}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 7}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 6}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 5}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 4}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 3}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 2}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 1}} & {M\; \theta_{{ZX}\; 0\; M\; \_ 0}}\end{matrix} \right)\begin{pmatrix}{s_{X}^{2} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Z}} \\{s_{X} \cdot s_{Z}^{2}} \\s_{X}^{2} \\{s_{X} \cdot s_{Z}} \\s_{Z}^{2} \\s_{X} \\s_{Z} \\1\end{pmatrix}}} & (8)\end{matrix}$

Here, since the intercept I, the angles θ_(P) and θ_(M), theacceleration a_(X) of the scanning movement and the scale value S areknown in the formulae (7) and (8), a coefficient vector (referred to asMI_(X) and Mθ_(ZX) hereinafter) to be multiplied with the scale value Sbased on the error er_(X) when the probe 21 is oriented in the ±Y-axisdirection can be calculated from the formulae (7) and (8).

Incidentally, since the coefficient vector MI_(X) is also calculated onthe error er_(X) where the probe 21 is oriented in the −Z-axisdirection, an average value of the respective coefficient vectors MI_(X)is used in this exemplary embodiment.

Further, in the same manner as the calculation of the coefficientvectors MI_(X) and Mθ_(ZX), coefficients vectors MI_(Y), MI_(Z),Mθ_(XY), Mθ_(XZ), Mθ_(YX), Mθ_(YZ), Mθ_(ZY) are calculated to calculatethe coefficient vector M_(S) shown in the formula (5-1).

Then, as shown in the formula (5-1), the acceleration correction-amountcalculating unit 81 calculates the coefficient vector M_(A) based on thecalculated coefficient vector M_(S) and the scale value S acquired bythe displacement acquiring unit 52. Further, as shown in the formula(4), the acceleration correction-amount calculating unit 81 calculatesthe translation-correction amount CT and the rotation angle Cθ based onthe calculated coefficient vector M_(A) and the acceleration Acalculated by the second-order differentiating unit 713.

Here, as described above, the formula (4) is classified into theconditional expressions (4-1) to (4-6). This is because inclinationsS_(P) and S_(M) of different approximate linear lines are derivedaccording to a difference in the orientation of the probe 21 (i.e. whenthe probe 21 is oriented in the +Y-axis direction (+X-axis direction)and when the probe 21 is oriented in the −Y-axis direction (−X-axisdirection)). Further, as discussed above, since the probe 21 cannot beoriented in the +Z-axis direction on account of the structure of thecoordinate measuring machine body 2, the coefficient vector M_(A)corresponding to the value on the right side of the conditionalexpression (4-1) cannot be calculated. However, the rotation mechanism213 can, though slightly, alter the orientation of the probe 21 evenwithin the range of the conditional expression (4-1). Accordingly, theacceleration correction-amount calculating unit 81 calculates thetranslation-correction amount CT and the rotation angle Cθ using theconditional expression (4-2) even within the range of the conditionalexpression (4-1).

Incidentally, the acceleration correction-amount calculating unit 81calculates the orientation (θ_(X0), θ_(Y0), θ_(Z0)) of the probe 21 inthe conditional expressions (4-1) to (4-6) according to the followingformula (9).

$\begin{matrix}\left\{ \begin{matrix}{\theta_{X\; 0} = {\sin^{- 1}\left\{ {\left( {b_{Y} + p_{Y\; 0}} \right)/1_{XY}} \right\}}} \\{\theta_{Y\; 0} = {\sin^{- 1}\left\{ {\left( {b_{Z} + p_{Z\; 0}} \right)/1_{YZ}} \right\}}} \\{\theta_{Z\; 0} = {\sin^{- 1}\left\{ {\left( {b_{X} + p_{X\; 0}} \right)/1_{XZ}} \right\}}}\end{matrix} \right. & (9)\end{matrix}$

Here, the probe vector P₀(p_(X0), p_(Y0), p_(Z0)) is a vector obtainedby calibrating the coordinate measuring machine body 2. Specifically,the probe vector P₀ is a vector indicating a displacement from apredetermined position on the coordinate measuring machine body 2(defined as an origin hereinafter) to the measurement piece 211A. Avector B(b_(X), b_(Y), b_(Z)) is a vector representing a displacementfrom the reference point R to the origin of the probe vector P₀.Further, l_(XY), l_(YZ), l_(XZ) are lengths of orthographs of the swivellength L onto the XY plane, YZ plane and XZ plane, which is calculatedaccording to the following formula (10). Incidentally, the vector B andthe swivel length L are stored in advance in the storage 55 per each ofthe types of the probe, where the vector B and the swivel length Lcorresponding to the used probe can be selected by the input unit 61.

$\begin{matrix}\left\{ \begin{matrix}{1_{XY} = \sqrt{\left( {b_{X} + p_{X\; 0}} \right)^{2} + \left( {b_{Y} + p_{Y\; 0}} \right)^{2}}} \\{1_{YZ} = \sqrt{\left( {b_{Y} + p_{Y\; 0}} \right)^{2} + \left( {b_{Z} + p_{Z\; 0}} \right)^{2}}} \\{1_{XZ} = \sqrt{\left( {b_{X} + p_{X\; 0}} \right)^{2} + \left( {b_{Z} + p_{Z\; 0}} \right)^{2}}}\end{matrix} \right. & (10)\end{matrix}$

The rotation correction-amount calculating unit 82 calculates arotation-correction amount CR for correcting the rotation error of theprobe on account of the rotation angle of the probe 21 and the length ofthe probe 21 from the reference point R to the measurement piece 211A.Specifically, the rotation correction-amount calculating unit 82calculates the rotation-correction amount CR based on the rotation angleCθ calculated by the acceleration correction-amount calculating unit 81,the orientation (θ_(X0), θ_(Y0), θ_(Z0)) of the probe 21 altered by therotation mechanism 213 and the length (l_(XY), l_(YZ), l_(XZ)) of theorthograph of the swivel length L onto the XY plane, YZ plane and XZplane according to the following formula (11).

$\begin{matrix}\left\{ \begin{matrix}{{CR}_{X} = {1_{XY}\left\{ {{\cos \left( \theta_{Z\; 0} \right)} - {\cos \left( {\theta_{Z\; 0} + {C\; \theta_{Z}}} \right)}} \right\}}} \\{{CR}_{Y} = {{1_{YZ}\begin{Bmatrix}{{\cos \left( \theta_{X\; 0} \right)} -} \\{\cos \left( {\theta_{X\; 0} + {C\; \theta_{X}}} \right)}\end{Bmatrix}} + {1_{XY}\begin{Bmatrix}{{\sin \left( {\theta_{Z\; 0} + {C\; \theta_{Z}}} \right)} -} \\{\sin \left( \theta_{Z\; 0} \right)}\end{Bmatrix}}}} \\{{CR}_{Z} = {{1_{XZ}\begin{Bmatrix}{{\cos \left( \theta_{Y\; 0} \right)} -} \\{\cos \left( {\theta_{Y\; 0} + {C\; \theta_{Y}}} \right)}\end{Bmatrix}} + {1_{YZ}\begin{Bmatrix}{{\sin \left( {\theta_{X\; 0} + {C\; \theta_{X}}} \right)} -} \\{\sin \left( \theta_{X\; 0} \right)}\end{Bmatrix}}}}\end{matrix} \right. & (11)\end{matrix}$

FIG. 8 is an illustration showing a relationship among thecorrection-amount calculating unit 8, the displacement correcting unit531 and the displacement synthesizing unit 532.

As described above, the correction-amount calculating unit 8 calculatesthe correction amount (the translation-correction amount CT and therotation-correction amount CR) based on the acceleration A, the swivellength L and the scale value S (see FIG. 8).

As shown in FIG. 8, the displacement correcting unit 531 corrects thescale value S acquired by the displacement acquiring unit 52 based onthe correction amount calculated by the correction-amount calculatingunit 8. Specifically, the displacement correcting unit 531 corrects thescale value S according to the following formula (12) based on thetranslation-correction amount CT calculated by the accelerationcorrection-amount calculating unit 81 and the rotation-correction amountCR calculated by the rotation correction-amount calculating unit 82.

$\begin{matrix}\left. \begin{matrix}{{CS}_{X} = {s_{X} + {CT}_{X} + {CR}_{X}}} \\{{CS}_{Y} = {s_{Y} + {CT}_{Y} + {CR}_{Y}}} \\{{CS}_{Z} = {s_{Z} + {CT}_{Z} + {CR}_{Z}}}\end{matrix} \right\} & (12)\end{matrix}$

Then, the displacement synthesizing unit 532 synthesizes a correctedscale value CS(CS_(X), CS_(Y), CS_(Z)) corrected by the displacementcorrecting unit 531 and the probe value P acquired by the displacementacquiring unit 52 according to the following formula (13) to calculatethe measurement value (x, y, z).

In other words, a correcting unit is provided by the displacementcorrecting unit 531 and the displacement synthesizing unit 532 so thatthe position error of the measurement piece 211A is corrected based onthe scale value S acquired by the displacement acquiring unit 52 and thecorrection amount (the translation-correction amount CT and therotation-correction amount CR) calculated by the correction-amountcalculating unit 8.

$\begin{matrix}\left. \begin{matrix}{\,_{X}{= {{CS}_{X} + p_{X}}}} \\{\,_{Y}{= {{CS}_{Y} + p_{Y}}}} \\{\,_{Z}{= {{CS}_{Z} + p_{Z}}}}\end{matrix} \right\} & (13)\end{matrix}$

FIGS. 9A, 9B and 10 illustrate measurement results when the surfaceprofile of the object W was measured without correcting the scale valueS by the displacement correcting unit 531. FIGS. 9A and 9B show themeasurement results when the probes 21 of different length were used,where FIG. 9A shows the measurement results when the probe 21 of a longswivel length L was used and FIG. 9B shows the measurement results whenthe probe 21 of a short swivel length L was used. Further, FIG. 10 showsa measurement result when the attitude of the probe 21 was altered.

In FIGS. 9A, 9B and 10, the circle shown in a heavy line represents aprofile data of the object W stored in the storage 55.

As shown in FIGS. 9A, 9B and 10, the respective measurement results aresmaller than the profile data in any of the instances. This is becausethe position error of the measurement piece 211A caused on account ofthe scanning movement of the probe 21 affected the measurement value.

Further, the measurement results of the case using the probe 21 of ashort swivel length L (FIG. 9B) showed a shape smaller than themeasurement results (FIG. 9A) using the probe 21 of a long swivel lengthL. This is because, when probes 21 of different lengths are used, thepositions of the measurement piece 211A differ even when the movingmechanism 22 deformed at the same level. Further, the measurementresults (FIG. 10) when the attitude of the probe 21 was changed exhibita shape different from the measurement results (FIGS. 9A and 9B) whenthe attitude of the probe 21 was not changed. This is because, when theattitude of the probe 21 is altered, the position of the measurementpiece 211A relative to the moving mechanism 22 is shifted.

As described above, the above measurement results sampled when theprobes 21 of different lengths were used and when the attitude of theprobe 21 was altered exhibited different shape. In other words, theerrors of measurement value differed in the respective instances.

Accordingly, when the errors in the measurement value are correctedbased on the same correction amount irrespective of the difference inthe length and the attitude of the probe 21, the errors of themeasurement value cannot be appropriately corrected.

FIGS. 11A, 11B and 12 illustrate measurement results when the surfaceprofile of the object W was measured while correcting the scale value Sby the displacement correcting unit 531. FIGS. 11A, 1B and 12respectively correspond to FIGS. 9A, 9B and 10.

As shown in FIGS. 11A, 11B and 12, the respective measurement resultsexhibited substantially the same shape as the profile data in any of theinstances. In other words, the errors in the measurement value could beproperly corrected when the probes 21 of different lengths were used andwhen the attitude of the probe 21 was changed. This is because theposition error of the measurement piece 211A was corrected based on thecorrection amount (the translation-correction amount CT androtation-correction amount CR) calculated by the correction-amountcalculating unit 8.

According to this exemplary embodiment, following advantages can beobtained.

(1) The coordinate measuring machine 1 includes the correction-amountcalculating unit 8 for separately calculating the translation-correctionamount CT and the rotation-correction amount CR for correcting theposition error of the measurement piece 211A caused by the scanningmovement of the probe 21, the displacement correcting unit 531 forcorrecting the position error of the measurement piece 211A based on thetranslation-correction amount CT and the rotation-correction amount CRcalculated by the correction-amount calculating unit 8 and thedisplacement synthesizing unit 532, the position error of themeasurement piece 211A caused on account of the deformation of the slidemechanism 24 can be corrected.(2) When the length or the attitude of the probe 21 differs, though thetranslation-correction amount CT calculated by the correction-amountcalculating unit 8 is approximately equal, the rotation-correctionamount CR becomes different according to the length or the attitude ofthe probe 21. Accordingly, the correction-amount calculating unit 8 isarranged so that an appropriate correction amount can be calculated evenwhen the length of the probe 21 differs or the attitude of the probe 21is altered. Consequently, the errors in the measurement value can beproperly corrected by the coordinate measuring machine 1 even in suchcases.

Second Embodiment

A second exemplary embodiment of the invention will be described belowwith reference to the attached drawings.

Incidentally, the same reference numeral will be attached to thosecomponents having been described and the description thereof will beomitted.

FIG. 13 is a block diagram showing an overall arrangement of acoordinate measuring machine 1A according to the second exemplaryembodiment of the invention.

In the first exemplary embodiment, the movement-estimating unit 7includes the acceleration-estimating unit 71 to calculate theacceleration A of the scanning movement of the probe 21. In contrast, inthis exemplary embodiment, a movement-estimating unit 7A includes, aswell as the acceleration-estimating unit 71, a frequency-estimating unit72 that estimates a frequency of the scanning movement of the probe 21.

Further, in the first exemplary embodiment, the correction-amountcalculating unit 8 includes the acceleration correction-amountcalculating unit 81 and the rotation correction-amount calculating unit82 to calculate the translation-correction amount CT and therotation-correction amount CR as the correction amount. In contrast, acorrection-amount calculating unit 8A of this exemplary embodimentincludes, as well as the acceleration correction-amount calculating unit81 and the rotation correction-amount calculating unit 82, a phasedifference correction-amount calculating unit 83 that calculates a phasedifference correction-amount for correcting a phase difference betweenthe respective movement axes in the X, Y and Z-axis directions of theslide mechanism 24.

The frequency-estimating unit 72 estimates a frequency f when ameasurement piece 211A circulates at a constant angular velocity alongthe side of the object W to depict a circular locus. Specifically, thefrequency-estimating unit 72 calculates the frequency f according to thefollowing formula (14) based on the acceleration A of the scanningmovement calculated by the second-order differentiating unit 713 and arotation radius Rs of the measurement piece 211A.

$\begin{matrix}{f = \sqrt{\frac{\sqrt{a_{X}^{2} + a_{Y}^{2} + a_{Z}^{2}}}{\left( {2\pi} \right)^{2} \cdot R_{S}}}} & (14)\end{matrix}$

Incidentally, the formula (14) can be derived by a deformation shown inthe following formulae (15-1) and (15-2) based on the relationshipbetween the frequency f and an angular velocity ω represented as ω=2πfand the relationship among a centripetal acceleration a_(N), rotationradius Rs and the angular velocity ω represented as a_(N)=Rsω².

$\begin{matrix}{\omega = {\sqrt{\frac{a_{N}}{R_{S}}} = \sqrt{\frac{\sqrt{a_{X}^{2} + a_{Y}^{2} + a_{Z}^{2}}}{R_{S}}}}} & \left( {15\text{-}1} \right) \\{f = {{\frac{1}{2\pi}\sqrt{\frac{\sqrt{a_{X}^{2} + a_{Y}^{2} + a_{Z}^{2}}}{R_{S}}}} = \sqrt{\frac{\sqrt{a_{X}^{2} + a_{Y}^{2} + a_{Z}^{2}}}{\left( {2\pi} \right)^{2} \cdot R_{S}}}}} & \left( {15\text{-}2} \right)\end{matrix}$

Further, the formula (15-2) can be simplified as the following formula(16), where f_(XY) represents a frequency of the circular motion in theXY plane, f_(XZ) represents a frequency of the circular motion in the XZplane and f_(YX) represents a frequency of the circular motion in the YZplane.

$\begin{matrix}\left. \begin{matrix}{f_{XY} = \sqrt{\frac{\sqrt{a_{X}^{2} + a_{Y}^{2}}}{\left( {2\pi} \right)^{2} \cdot R_{S}}}} \\{f_{XZ} = \sqrt{\frac{\sqrt{a_{X}^{2} + a_{Z}^{2}}}{\left( {2\pi} \right)^{2} \cdot R_{S}}}} \\{f_{YZ} = \sqrt{\frac{\sqrt{a_{Y}^{2} + a_{Z}^{2}}}{\left( {2\pi} \right)^{2} \cdot R_{S}}}}\end{matrix} \right\} & (16)\end{matrix}$

The phase difference correction-amount calculating unit 83 calculatesthe phase difference correction-amount for correcting the phasedifference among the respective movement axes of the slide mechanism 24in the X, Y and Z-axis directions.

As described above, the position control system of the moving mechanism22 is adjusted so that all of the time constants T of the transferfunction in the respective axis directions are equal. Specifically, themoving mechanism 22 is adjusted so that all of the control parameterssuch as feed-forward gain and the like of the position control systemare equal. However, velocity control systems, which are minor loops ofposition control systems (major loop), respectively exhibit differentcharacteristics since the structure of the respective movement axes ofthe slide mechanism 24 differ. Accordingly, a phase difference isgenerated among the respective movement axes of the slide mechanism 24in accordance with the velocity of the scanning movement, i.e. thefrequency f.

Accordingly, the phase difference correction-amount calculating unit 83calculates a phase-difference correction-amount C_(φXY) between themovement axis in the X-axis direction and the movement axis in theY-axis direction, a phase-difference correction-amount C_(φXZ) betweenthe movement axis in the X-axis direction and the movement axis in theZ-axis direction and a phase-difference correction-amount C_(φYZ)between the movement axis in the Y-axis direction and the movement axisin the Z-axis direction according to the following formulae (17) and(18) that are modeled as a quadratic expression of the frequency f and alinear expression of the swivel length L.

$\begin{matrix}{\begin{pmatrix}{MI}_{XYP} \\{MI}_{XYM} \\{MI}_{XZP} \\{MI}_{XZM} \\{MI}_{YZP} \\{MI}_{YZM} \\{M\; \theta_{XYP}} \\{M\; \theta_{XYM}} \\{M\; \theta_{XZP}} \\{M\; \theta_{YZM}} \\{M\; \theta_{YZP}} \\{M\; \theta_{YZM}}\end{pmatrix}\mspace{31mu} = {\left( \begin{matrix}{MI}_{{XY}\; 2P} & {MI}_{{XY}\; 1P} & 0 & 0 & 0 & 0 & {MI}_{{XY}\; 0P} \\{MI}_{{{XY}\; 2M}\;} & {MI}_{{XZ}\; 1M} & 0 & 0 & 0 & 0 & {MI}_{{XY}\; 0M} \\0 & 0 & {MI}_{{XZ}\; 2P} & {MI}_{{YZ}\; 1P} & 0 & 0 & {MI}_{{XZ}\; 0P} \\0 & 0 & {MI}_{{XZ}\; 2M} & {MI}_{{XZ}\; 1M} & 0 & 0 & {MI}_{{XZ}\; 0M} \\0 & 0 & 0 & 0 & {MI}_{{YZ}\; 2P} & {MI}_{{YZ}\; 1P} & {MI}_{{YZ}\; 0P} \\0 & 0 & 0 & 0 & {MI}_{{YZ}\; 2M} & {MI}_{{YZ}\; 1M} & {MI}_{{YZ}\; 0M} \\{M\; \theta_{{XY}\; 2P}} & {M\; \theta_{{XY}\; 1P}} & 0 & 0 & 0 & 0 & {M\; \theta_{{XY}\; 0P}} \\{M\; \theta_{{XY}\; 2M}} & {M\; \theta_{{XY}\; 1M}} & 0 & 0 & 0 & 0 & {M\; \theta_{{XY}\; 0M}} \\0 & 0 & {M\; \theta_{{XZ}\; 2P}} & {M\; \theta_{{XZ}\; 1P}} & 0 & 0 & {M\; \theta_{{XZ}\; 0P}} \\0 & 0 & {M\; \theta_{{XZ}\; 2M}} & {M\; \theta_{{XZ}\; 1M}} & 0 & 0 & {M\; \theta_{{XZ}\; 0M}} \\0 & 0 & 0 & 0 & {M\; \theta_{{YZ}\; 2P}} & {M\; \theta_{{YZ}\; 1P}} & {M\; \theta_{{YZ}\; 0P}} \\0 & 0 & 0 & 0 & {M\; \theta_{{YZ}\; 2M}} & {M\; \theta_{{YZ}\; 1M}} & {M\; \theta_{{YZ}\; 0M}}\end{matrix} \right)\mspace{34mu} \begin{pmatrix}f_{XY}^{2} \\f_{XY} \\f_{XZ}^{2} \\f_{XZ} \\f_{YZ}^{2} \\f_{YZ} \\1\end{pmatrix}}} & (17) \\{\mspace{79mu} {\begin{pmatrix}{C\; \varphi_{XYP}} \\{C\; \varphi_{XYM}} \\{C\; \varphi_{XZP}} \\{C\; \varphi_{XZM}} \\{C\; \varphi_{YZP}} \\{C\; \varphi_{YM}}\end{pmatrix} = {\begin{pmatrix}0 & 0 & {M\; \theta_{XYP}} & {MI}_{XYP} \\0 & 0 & {M\; \theta_{XYM}} & {MI}_{XYM} \\0 & {M\; \theta_{XZP}} & 0 & {MI}_{XZP} \\0 & {M\; \theta_{XZM}} & 0 & {MI}_{XZM} \\{M\; \theta_{YZP}} & 0 & 0 & {MI}_{YZP} \\{M\; \theta_{YZM}} & 0 & 0 & {MI}_{YZM}\end{pmatrix}\begin{pmatrix}1_{X} \\1_{Y} \\1_{Z} \\1\end{pmatrix}}}} & (18)\end{matrix}$

However, the formula (18) is classified according to the followingconditional expressions (18-1) to (18-3). The details of theclassification by the conditional expressions (18-1) to (18-3) will bedescribed below.

$\begin{matrix}{C\; \varphi_{XZ}\left\{ \begin{matrix}{= {C\; {\varphi_{XZP}\left( {1_{X} \geqq 0} \right)}}} \\{= {C\; {\varphi_{XZM}\left( {1_{X} < 0} \right)}}}\end{matrix} \right.} & \left( {18\text{-}1} \right) \\{C\; \varphi_{YZ}\left\{ \begin{matrix}{= {C\; {\varphi_{YZP}\left( {1_{Y} \geqq 0} \right)}}} \\{= {C\; {\varphi_{YZM}\left( {1_{Y} < 0} \right)}}}\end{matrix} \right.} & \left( {18\text{-}2} \right) \\{C\; \varphi_{XY}\left\{ \begin{matrix}{= {C\; {\varphi_{XYP}\left( {1_{Z} \geqq 0} \right)}}} \\{= {C\; {\varphi_{XYM}\left( {1_{Z} < 0} \right)}}}\end{matrix} \right.} & \left( {18\text{-}3} \right)\end{matrix}$

Further, on account of the structure of the slide mechanism 24, sincethe coefficient vector (referred to as M_(f) hereinafter) multipliedwith the frequency f varies in the formula (17) depending on themeasurement position, the coefficient vector M_(f) is represented by thefollowing formulae (19-1) to (19-3) that are modeled as quadraticexpressions of the scale value S. Incidentally, in the formulae (19-1)to (19-3), the coefficient multiplied with the scale value s_(Y) is setat zero to reduce the size of the coefficient vectors (referred to asM_(XY), M_(XZ), M_(YZ) hereinafter) stored in the storage 55 to curtailthe used area in the storage 55.

$\begin{matrix}{\begin{pmatrix}{MI}_{{XY}\; 2P} \\{MI}_{{XY}\; 1P} \\{MI}_{{XY}\; 0P} \\{MI}_{{XY}\; 2M} \\{MI}_{{XY}\; 1M} \\{MI}_{{XY}\; 0M} \\{M\; \theta_{{XY}\; 2P}} \\{M\; \theta_{{XY}\; 1P}} \\{M\; \theta_{{XY}\; 0P}} \\{M\; \theta_{{XY}\; 2M}} \\{M\; \theta_{{XY}\; 1M}} \\{M\; \theta_{{XY}\; 0M}}\end{pmatrix} = {\begin{pmatrix}{MI}_{{XY}\; 2{P\_}8} & {MI}_{{XY}\; 2{P\_}7} & {MI}_{{XY}\; 2{P\_}6} & {MI}_{{XY}\; 2{P\_}5} & {MI}_{{XY}\; 2{P\_}4} & {MI}_{{XY}\; 2{P\_}3} & {MI}_{{XY}\; 2{P\_}2} & {MI}_{{XY}\; 2{P\_}1} & {MI}_{{XY}\; 2{P\_}0} \\{MI}_{{XY}\; 1{P\_}8} & {MI}_{{XY}\; 1{P\_}7} & {MI}_{{XY}\; 1{P\_}6} & {MI}_{{XY}\; 1{P\_}5} & {MI}_{{XY}\; 1{P\_}4} & {MI}_{{XY}\; 1{P\_}3} & {MI}_{{XY}\; 1{P\_}2} & {MI}_{{XY}\; 1{P\_}1} & {MI}_{{XY}\; 1{P\_}0} \\{MI}_{{XY}\; 0{P\_}8} & {MI}_{{XY}\; 0{P\_}7} & {MI}_{{XY}\; 0{P\_}6} & {MI}_{{XY}\; 0{P\_}5} & {MI}_{{XY}\; 0{P\_}4} & {MI}_{{XY}\; 0{P\_}3} & {MI}_{{XY}\; 0{P\_}2} & {MI}_{{XY}\; 0{P\_}1} & {MI}_{{XY}\; 0{P\_}0} \\{MI}_{{XY}\; 2{M\_}8} & {MI}_{{XY}\; 2{M\_}7} & {MI}_{{XY}\; 2{M\_}6} & {MI}_{{XZ}\; 2{M\_}5} & {MI}_{{XY}\; 2{M\_}4} & {MI}_{{XY}\; 2{M\_}3} & {MI}_{{XY}\; 2{M\_}2} & {MI}_{{XY}\; 2{M\_}1} & {MI}_{{XY}\; 2{M\_}0} \\{MI}_{{XY}\; 1{M\_}8} & {MI}_{{XY}\; 1{M\_}7} & {MI}_{{XY}\; 1{M\_}6} & {MI}_{{XY}\; 1{M\_}5} & {MI}_{{XY}\; 1{M\_}4} & {MI}_{{XY}\; 1{M\_}3} & {MI}_{{XY}\; 1{M\_}2} & {MI}_{{XY}\; 1{M\_}1} & {MI}_{{XY}\; 1{M\_}0} \\{MI}_{{XY}\; 0{M\_}8} & {MI}_{{XY}\; 0{M\_}7} & {MI}_{{XY}\; 0{M\_}6} & {MI}_{{XY}\; 0{M\_}5} & {MI}_{{XY}\; 0{M\_}4} & {MI}_{{XY}\; 0{M\_}3} & {MI}_{{XY}\; 0{M\_}2} & {MI}_{{XY}\; 0{M\_}1} & {MI}_{{XY}\; 0{M\_}0} \\{M\; \theta_{{XY}\; 2{P\_}8}} & {M\; \theta_{{XY}\; 2{P\_}7}} & {M\; \theta_{{XY}\; 2{P\_}6}} & {M\; \theta_{{XY}\; 2{P\_}5}} & {M\; \theta_{{XY}\; 2\; {P\_}4}} & {M\; \theta_{{XY}\; 2{P\_}3}} & {M\; \theta_{{XY}\; 2{P\_}2}} & {M\; \theta_{{XY}\; 2{P\_}1}} & {M\; \theta_{{XY}\; 2{P\_}0}} \\{M\; \theta_{{XY}\; 1{P\_}8}} & {M\; \theta_{{XY}\; 1{P\_}7}} & {M\; \theta_{{XY}\; 1{P\_}6}} & {M\; \theta_{{XY}\; 1{P\_}5}} & {M\; \theta_{{XY}\; 1{P\_}4}} & {M\; \theta_{{XY}\; 1{P\_}3}} & {M\; \theta_{{XY}\; 1{P\_}2}} & {M\; \theta_{{XY}\; 1{P\_}1}} & {M\; \theta_{{XY}\; 1{P\_}0}} \\{M\; \theta_{{XY}\; 0{P\_}8}} & {M\; \theta_{{XY}\; 0{P\_}7}} & {M\; \theta_{{XY}\; 0{P\_}6}} & {M\; \theta_{{XY}\; 1{P\_}5}} & {M\; \theta_{{XY}\; 0{P\_}4}} & {M\; \theta_{{XY}\; 0{P\_}3}} & {M\; \theta_{{XY}\; 0{P\_}2}} & {M\; \theta_{{XY}\; 0{P\_}\; 1}} & {M\; \theta_{{XY}\; 0{P\_}0}} \\{M\; \theta_{{XY}\; 2{M\_}8}} & {M\; \theta_{{XY}\; 2{M\_}7}} & {M\; \theta_{{XY}\; 2{M\_}6}} & {M\; \theta_{{XY}\; 2{M\_}5}} & {M\; \theta_{{XY}\; 2{M\_}4}} & {M\; \theta_{{XY}\; 2{M\_}3}} & {M\; \theta_{{XY}\; 2{M\_}2}} & {M\; \theta_{{XY}\; 2{M\_}1}} & {M\; \theta_{{XY}\; 2{M\_}0}} \\{M\; \theta_{{XY}\; 1{M\_}8}} & {M\; \theta_{{XY}\; 1{M\_}7}} & {M\; \theta_{{XY}\; 1{M\_}6}} & {M\; \theta_{{XY}\; 1{M\_}5}} & {M\; \theta_{{XY}\; 1{M\_}4}} & {M\; \theta_{{XY}\; 1{M\_}3}} & {M\; \theta_{{XY}\; 1{M\_}2}} & {M\; \theta_{{XY}\; 1{M\_}1}} & {M\; \theta_{{XY}\; 1{M\_}0}} \\{M\; \theta_{{XY}\; 0{M\_}8}} & {M\; \theta_{{XY}\; 0{M\_}7}} & {M\; \theta_{{XY}\; 0{M\_}6}} & {M\; \theta_{{XY}\; 0{M\_}5}} & {M\; \theta_{{XY}\; 0{M\_}4}} & {M\; \theta_{{XY}\; 0{M\_}3}} & {M\; \theta_{{XY}\; 0{M\_}2}} & {M\; \theta_{{XY}\; 0{M\_}1}} & {M\; \theta_{{XY}\; 0{M\_}0}}\end{pmatrix}\begin{pmatrix}{s_{X}^{2} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Z}} \\{s_{X} \cdot s_{Z}^{2}} \\s_{X}^{2} \\{s_{X} \cdot s_{Z}} \\s_{Z}^{2} \\s_{X} \\s_{Z} \\1\end{pmatrix}}} & \left( {19\text{-}1} \right) \\{\begin{pmatrix}{MI}_{{XZ}\; 2P} \\{MI}_{{XZ}\; 1P} \\{MI}_{{XZ}\; 0P} \\{MI}_{{XZ}\; 2M} \\{MI}_{{XZ}\; 1M} \\{MI}_{{XZ}\; 0M} \\{M\; \theta_{{XZ}\; 2P}} \\{M\; \theta_{{XZ}\; 1P}} \\{M\; \theta_{{XZ}\; 0P}} \\{M\; \theta_{{XZ}\; 2M}} \\{M\; \theta_{{XZ}\; 1M}} \\{M\; \theta_{{XZ}\; 0M}}\end{pmatrix} = {\begin{pmatrix}{MI}_{{XZ}\; 2{P\_}8} & {MI}_{{XZ}\; 2{P\_}7} & {MI}_{{XZ}\; 2{P\_}6} & {MI}_{{XZ}\; 2{P\_}5} & {MI}_{{XZ}\; 2{P\_}4} & {MI}_{{XZ}\; 2{P\_}3} & {MI}_{{XZ}\; 2{P\_}2} & {MI}_{{XZ}\; 2{P\_}1} & {MI}_{{XZ}\; 2{P\_}0} \\{MI}_{{XZ}\; 1{P\_}8} & {MI}_{{XZ}\; 1{P\_}7} & {MI}_{{XZ}\; 1{P\_}6} & {MI}_{{XZ}\; 1{P\_}5} & {MI}_{{XZ}\; 1{P\_}4} & {MI}_{{XZ}\; 1{P\_}3} & {MI}_{{XZ}\; 1{P\_}2} & {MI}_{{XZ}\; 2{P\_}1} & {MI}_{{XZ}\; 1{P\_}0} \\{MI}_{{XZ}\; 0{P\_}8} & {MI}_{{XZ}\; 0{P\_}7} & {MI}_{{XZ}\; 0{P\_}6} & {MI}_{{XZ}\; 0{P\_}5} & {MI}_{{XZ}\; 0{P\_}4} & {MI}_{{XZ}\; 0{P\_}3} & {MI}_{{XZ}\; 0{P\_}2} & {MI}_{{XZ}\; 0{P\_}1} & {MI}_{{XZ}\; 0{P\_}0} \\{MI}_{{XZ}\; 2{M\_}8} & {MI}_{{XZ}\; 2{M\_}7} & {MI}_{{XZ}\; 2{M\_}6} & {MI}_{{XZ}\; 2{M\_}5} & {MI}_{{XZ}\; 2{M\_}4} & {MI}_{{XZ}\; 2{M\_}3} & {MI}_{{XZ}\; 2{M\_}2} & {MI}_{{XZ}\; 2{M\_}1} & {MI}_{{XZ}\; 2{M\_}0} \\{MI}_{{XZ}\; 1{M\_}8} & {MI}_{{XZ}\; 1{M\_}7} & {MI}_{{XZ}\; 1{M\_}6} & {MI}_{{XZ}\; 1{M\_}5} & {MI}_{{XZ}\; 1{M\_}4} & {MI}_{{XZ}\; 1{M\_}3} & {MI}_{{XZ}\; 1{M\_}2} & {MI}_{{XZ}\; 1{M\_}1} & {MI}_{{XZ}\; 1{M\_}0} \\{MI}_{{XZ}\; 0{M\_}8} & {MI}_{{XZ}\; 0{M\_}7} & {MI}_{{XZ}\; 0{M\_}6} & {MI}_{{XZ}\; 0{M\_}5} & {MI}_{{XZ}\; 0{M\_}4} & {MI}_{{XZ}\; 0{M\_}3} & {MI}_{{XZ}\; 0{M\_}2} & {MI}_{{XZ}\; 0{M\_}1} & {MI}_{{XZ}\; 0{M\_}0} \\{M\; \theta_{{XZ}\; 2{P\_}8}} & {M\; \theta_{{XZ}\; 2{P\_}7}} & {M\; \theta_{{XZ}\; 2{P\_}6}} & {M\; \theta_{{XZ}\; 2{P\_}5}} & {M\; \theta_{{XZ}\; 2\; {P\_}4}} & {M\; \theta_{{XZ}\; 2{P\_}3}} & {M\; \theta_{{XZ}\; 2{P\_}2}} & {M\; \theta_{{XZ}\; 2{P\_}1}} & {M\; \theta_{{XZ}\; 2{P\_}0}} \\{M\; \theta_{{XZ}\; 1{P\_}8}} & {M\; \theta_{{XZ}\; 1{P\_}7}} & {M\; \theta_{{XZ}\; 1{P\_}6}} & {M\; \theta_{{XZ}\; 1{P\_}5}} & {M\; \theta_{{XZ}\; 1{P\_}4}} & {M\; \theta_{{XZ}\; 1{P\_}3}} & {M\; \theta_{{XZ}\; 1{P\_}2}} & {M\; \theta_{{XZ}\; 1{P\_}1}} & {M\; \theta_{{XZ}\; 1{P\_}0}} \\{M\; \theta_{{XZ}\; 0{P\_}8}} & {M\; \theta_{{XZ}\; 0{P\_}7}} & {M\; \theta_{{XZ}\; 0{P\_}6}} & {M\; \theta_{{{XZ0}{P\_}}5}} & {M\; \theta_{{XZ}\; 0{P\_}4}} & {M\; \theta_{{XZ}\; 0{P\_}3}} & {M\; \theta_{{XZ}\; 0{P\_}2}} & {M\; \theta_{{XZ}\; 0{P\_}\; 1}} & {M\; \theta_{{XZ}\; 0{P\_}0}} \\{M\; \theta_{{XZ}\; 2{M\_}8}} & {M\; \theta_{{XZ}\; 2{M\_}7}} & {M\; \theta_{{XZ}\; 2{M\_}6}} & {M\; \theta_{X\; Z\; 2{M\_}5}} & {M\; \theta_{{XZ}\; 2{M\_}4}} & {M\; \theta_{{XZ}\; 2{M\_}3}} & {M\; \theta_{{XZ}\; 2{M\_}2}} & {M\; \theta_{{XZ}\; 2{M\_}1}} & {M\; \theta_{{XZ}\; 2{M\_}0}} \\{M\; \theta_{{XZ}\; 1{M\_}8}} & {M\; \theta_{{XZ}\; 1{M\_}7}} & {M\; \theta_{{XZ}\; 1{M\_}6}} & {M\; \theta_{{XZ}\; 1{M\_}5}} & {M\; \theta_{{XZ}\; 1{M\_}4}} & {M\; \theta_{{XZ}\; 1{M\_}3}} & {M\; \theta_{{XZ}\; 1{M\_}2}} & {M\; \theta_{{XZ}\; 1{M\_}1}} & {M\; \theta_{{XZ}\; 1{M\_}0}} \\{M\; \theta_{{XZ}\; 0{M\_}8}} & {M\; \theta_{{XZ}\; 0{M\_}7}} & {M\; \theta_{{XZ}\; 0{M\_}6}} & {M\; \theta_{{XZ}\; 0{M\_}5}} & {M\; \theta_{{XZ}\; 0{M\_}4}} & {M\; \theta_{{XZ}\; 0{M\_}3}} & {M\; \theta_{{XZ}\; 0{M\_}2}} & {M\; \theta_{{XZ}\; 0{M\_}1}} & {M\; \theta_{{XZ}\; 0{M\_}0}}\end{pmatrix}\begin{pmatrix}{s_{X}^{2} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Z}} \\{s_{X} \cdot s_{Z}^{2}} \\s_{X}^{2} \\{s_{X} \cdot s_{Z}} \\s_{Z}^{2} \\s_{X} \\s_{Z} \\1\end{pmatrix}}} & \left( {19\text{-}2} \right) \\{\begin{pmatrix}{MI}_{{YZ}\; 2P} \\{MI}_{{YZ}\; 1P} \\{MI}_{{YZ}\; 0P} \\{MI}_{{YZ}\; 2M} \\{MI}_{{YZ}\; 1M} \\{MI}_{{YZ}\; 0M} \\{M\; \theta_{{YZ}\; 2P}} \\{M\; \theta_{{YZ}\; 1P}} \\{M\; \theta_{{YZ}\; 0P}} \\{M\; \theta_{{YZ}\; 2M}} \\{M\; \theta_{{YZ}\; 1M}} \\{M\; \theta_{{YZ}\; 0M}}\end{pmatrix} = {\begin{pmatrix}{MI}_{{YZ}\; 2{P\_}8} & {MI}_{{YZ}\; 2{P\_}7} & {MI}_{{YZ}\; 2{P\_}6} & {MI}_{{YZ}\; 2{P\_}5} & {MI}_{{YZ}\; 2{P\_}4} & {MI}_{{YZ}\; 2{P\_}3} & {MI}_{{YZ}\; 2{P\_}2} & {MI}_{{YZ}\; 2{P\_}1} & {MI}_{{YZ}\; 2{P\_}0} \\{MI}_{{YZ}\; 1{P\_}8} & {MI}_{{YZ}\; 1{P\_}7} & {MI}_{{YZ}\; 1{P\_}6} & {MI}_{{YZ}\; 1{P\_}5} & {MI}_{{YZ}\; 1{P\_}4} & {MI}_{{YZ}\; 1{P\_}3} & {MI}_{{YZ}\; 1{P\_}2} & {MI}_{{YZ}\; 2{P\_}1} & {MI}_{{YZ}\; 1{P\_}0} \\{MI}_{{YZ}\; 0{P\_}8} & {MI}_{{YZ}\; 0{P\_}7} & {MI}_{{YZ}\; 0{P\_}6} & {MI}_{{YZ}\; 0{P\_}5} & {MI}_{{YZ}\; 0{P\_}4} & {MI}_{{YZ}\; 0{P\_}3} & {MI}_{{YZ}\; 0{P\_}2} & {MI}_{{YZ}\; 0{P\_}1} & {MI}_{{YZ}\; 0{P\_}0} \\{MI}_{{YZ}\; 2{M\_}8} & {MI}_{{YZ}\; 2{M\_}7} & {MI}_{{YZ}\; 2{M\_}6} & {MI}_{{YZ}\; 2{M\_}5} & {MI}_{{YZ}\; 2{M\_}4} & {MI}_{{YZ}\; 2{M\_}3} & {MI}_{{YZ}\; 2{M\_}2} & {MI}_{{YZ}\; 2{M\_}1} & {MI}_{{YZ}\; 2{M\_}0} \\{MI}_{{YZ}\; 1{M\_}8} & {MI}_{{YZ}\; 1{M\_}7} & {MI}_{{YZ}\; 1{M\_}6} & {MI}_{{YZ}\; 1{M\_}5} & {MI}_{{YZ}\; 1{M\_}4} & {MI}_{{YZ}\; 1{M\_}3} & {MI}_{{YZ}\; 1{M\_}2} & {MI}_{{YZ}\; 1{M\_}1} & {MI}_{{YZ}\; 1{M\_}0} \\{MI}_{{YZ}\; 0{M\_}8} & {MI}_{{YZ}\; 0{M\_}7} & {MI}_{{YZ}\; 0{M\_}6} & {MI}_{{YZ}\; 0{M\_}5} & {MI}_{{YZ}\; 0{M\_}4} & {MI}_{{YZ}\; 0{M\_}3} & {MI}_{{YZ}\; 0{M\_}2} & {MI}_{{YZ}\; 0{M\_}1} & {MI}_{{YZ}\; 0{M\_}0} \\{M\; \theta_{{YZ}\; 2{P\_}8}} & {M\; \theta_{{YZ}\; 2{P\_}7}} & {M\; \theta_{{YZ}\; 2{P\_}6}} & {M\; \theta_{{YZ}\; 2{P\_}5}} & {M\; \theta_{{YZ}\; 2\; {P\_}4}} & {M\; \theta_{{YZ}\; 2{P\_}3}} & {M\; \theta_{{YZ}\; 2{P\_}2}} & {M\; \theta_{{YZ}\; 2{P\_}1}} & {M\; \theta_{{YZ}\; 2{P\_}0}} \\{M\; \theta_{{YZ}\; 1{P\_}8}} & {M\; \theta_{{YZ}\; 1{P\_}7}} & {M\; \theta_{{YZ}\; 1{P\_}6}} & {M\; \theta_{{YZ}\; 1{P\_}5}} & {M\; \theta_{{YZ}\; 1{P\_}4}} & {M\; \theta_{{YZ}\; 1{P\_}3}} & {M\; \theta_{{YZ}\; 1{P\_}2}} & {M\; \theta_{{YZ}\; 1{P\_}1}} & {M\; \theta_{{YZ}\; 1{P\_}0}} \\{M\; \theta_{{YZ}\; 0{P\_}8}} & {M\; \theta_{{YZ}\; 0{P\_}7}} & {M\; \theta_{{YZ}\; 0{P\_}6}} & {M\; \theta_{{YZ}\; 0{P\_}5}} & {M\; \theta_{{YZ}\; 0{P\_}4}} & {M\; \theta_{{YZ}\; 0{P\_}3}} & {M\; \theta_{{YZ}\; 0{P\_}2}} & {M\; \theta_{{YZ}\; 0{P\_}\; 1}} & {M\; \theta_{{YZ}\; 0{P\_}0}} \\{M\; \theta_{{YZ}\; 2{M\_}8}} & {M\; \theta_{{YZ}\; 2{M\_}7}} & {M\; \theta_{{YZ}\; 2{M\_}6}} & {M\; \theta_{{YZ}\; 2{M\_}5}} & {M\; \theta_{{YZ}\; 2{M\_}4}} & {M\; \theta_{{YZ}\; 2{M\_}3}} & {M\; \theta_{{YZ}\; 2{M\_}2}} & {M\; \theta_{{YZ}\; 2{M\_}1}} & {M\; \theta_{{YZ}\; 2{M\_}0}} \\{M\; \theta_{{YZ}\; 1{M\_}8}} & {M\; \theta_{{YZ}\; 1{M\_}7}} & {M\; \theta_{{YZ}\; 1{M\_}6}} & {M\; \theta_{{YZ}\; 1{M\_}5}} & {M\; \theta_{{YZ}\; 1{M\_}4}} & {M\; \theta_{{YZ}\; 1{M\_}3}} & {M\; \theta_{{YZ}\; 1{M\_}2}} & {M\; \theta_{{YZ}\; 1{M\_}1}} & {M\; \theta_{{YZ}\; 1{M\_}0}} \\{M\; \theta_{{YZ}\; 0{M\_}8}} & {M\; \theta_{{YZ}\; 0{M\_}7}} & {M\; \theta_{{YZ}\; 0{M\_}6}} & {M\; \theta_{{YZ}\; 0{M\_}5}} & {M\; \theta_{{YZ}\; 0{M\_}4}} & {M\; \theta_{{YZ}\; 0{M\_}3}} & {M\; \theta_{{YZ}\; 0{M\_}2}} & {M\; \theta_{{YZ}\; 0{M\_}1}} & {M\; \theta_{{YZ}\; 0{M\_}0}}\end{pmatrix}\begin{pmatrix}{s_{X}^{2} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Z}} \\{s_{X} \cdot s_{Z}^{2}} \\s_{X}^{2} \\{s_{X} \cdot s_{Z}} \\s_{Z}^{2} \\s_{X} \\s_{Z} \\1\end{pmatrix}}} & \left( {19\text{-}3} \right)\end{matrix}$

Next, the calculation of the coefficient vectors M_(XY), M_(XZ), M_(YZ)in the formulae (19-1) to (19-3) will be described below.

The coefficient vectors M_(XY), M_(XZ), M_(YZ) are calculated based onthe phase difference φ(φ_(XY), φ_(XZ), φ_(YZ)) among the respectivemovement axes. The phase difference φ is calculated based on theposition of the measurement piece 211A measured when the probe 21 issubjected to a scanning movement at a constant angular velocity whilethe measurement piece 211A is in contact with the reference ball 231.

FIG. 14 is a diagram showing a relationship between: a swivel lengthl_(Y), where the orientation of the probe 21 is set in the ±Y-axisdirection; and the phase difference φ_(XZ) between the movement axes inthe X and Z-axis directions. Further, FIG. 14 shows the relationship ata constant measurement position and a constant scanning movementvelocity.

As shown in FIG. 14, the phase difference φ_(XZ) increases in accordancewith the increase in the swivel length l_(Y) in + direction.Incidentally, when the coefficient vectors M_(XY), M_(XZ) and M_(YZ) forcalculating the phase-difference correction-amount Cφ are calculated,the respective values of the phase difference φ measured similarly tothe calculation of the coefficient vectors MI_(X), MI_(Y), MI_(Z),Mθ_(XY), Mθ_(XZ), Mθ_(YX), Mθ_(YZ), Mθ_(ZX) and Mθ_(ZY) for calculatingthe acceleration-correction amount (the translation-correction amount CTand the rotation angle Cθ) are subjected to a straight-lineapproximation. Specifically, the coefficient vector M_(XZ), forinstance, is calculated as follows.

Initially, an inclination S_(P) and an intercept I_(P) of an approximatecurve AP_(P) when the probe 21 is oriented in the +Y-axis direction, andan inclination S_(M) and an intercept I_(M) of an approximate curveAP_(M) when the probe 21 is oriented in the −Y-axis direction arerespectively calculated. Then, the inclinations S_(P) and S_(M) of theapproximate curves AP_(P) and AP_(M) are converted into the angles θ_(P)and θ_(M) according to the following formula (20).

θ_(P)=tan⁻¹(S _(P))

θ_(M)=tan⁻¹(S _(M))  (20)

FIG. 15 shows a relationship among the frequency f_(XZ) of the scanningmovement, the intercepts I_(P) and I_(M) of the respective approximatecurves AP_(P) and AP_(M) and the angles θ_(P) and θ_(M). Specifically,FIG. 15 shows the intercepts I_(P) and I_(M) and the angles θ_(P) andθ_(M) when the phase difference φ is measured at a constant measurementposition while varying the velocity of the scanning movement. In FIG.15, rhombus dots represent the intercept I_(P), circular dots representthe intercept I_(M), triangles represent the angle θ_(P) and rectangulardots represent the angle θ_(M).

As shown in FIG. 15, the intercepts I_(P) and I_(M) and the angles θ_(P)and θ_(M) vary in accordance with the increase in the frequency f_(XZ)of the scanning movement. Accordingly, the I_(P) and I_(M) and theangles θ_(P) and θ_(M) can be represented by the following formula (21)that is modeled as a quadratic expression of the frequency f_(XZ).

$\begin{matrix}{\begin{pmatrix}I_{P} \\I_{M} \\\theta_{P} \\\theta_{M}\end{pmatrix} = {\begin{pmatrix}{MI}_{{XZ}\; 2P} & {MI}_{{XZ}\; 1P} & {MI}_{{XZ}\; 0P} \\{MI}_{{XZ}\; 2M} & {MI}_{{XZ}\; 1M} & {MI}_{{XZ}\; 0M} \\{M\; \theta_{{XZ}\; 2P}} & {M\; \theta_{{XZ}\; 1P}} & {M\; \theta_{{XZ}\; 0P}} \\{M\; \theta_{{XZ}\; 2M}} & {M\; \theta_{{XZ}\; 1M}} & {M\; \theta_{{XZ}\; 0M}}\end{pmatrix}\begin{pmatrix}f_{XZ}^{2} \\f_{XZ} \\1\end{pmatrix}}} & (21)\end{matrix}$

Further, on account of the structure of the slide mechanism 24, sincethe coefficient vector multiplied with the frequency f_(XZ) varies inthe formula (21) depending on the scale value S(s_(X), s_(Z)) asmentioned above, the coefficient vector is represented by the followingformula (22) that is modeled as a quadratic expression of the scalevalue S.

$\begin{matrix}{\begin{pmatrix}{MI}_{{XZ}\; 2P} \\{MI}_{{XZ}\; 1P} \\{MI}_{{XZ}\; 0P} \\{MI}_{{XZ}\; 2M} \\{MI}_{{XZ}\; 1M} \\{MI}_{{XZ}\; 0M} \\{M\; \theta_{{XZ}\; 2P}} \\{M\; \theta_{{XZ}\; 1P}} \\{M\; \theta_{{XZ}\; 0P}} \\{M\; \theta_{{XZ}\; 2M}} \\{M\; \theta_{{XZ}\; 1M}} \\{M\; \theta_{{XZ}\; 0M}}\end{pmatrix} = {\begin{pmatrix}{MI}_{{XZ}\; 2{P\_}8} & {MI}_{{XZ}\; 2{P\_}7} & {MI}_{{XZ}\; 2{P\_}6} & {MI}_{{XZ}\; 2{P\_}5} & {MI}_{{XZ}\; 2{P\_}4} & {MI}_{{XZ}\; 2{P\_}3} & {MI}_{{XZ}\; 2{P\_}2} & {MI}_{{XZ}\; 2{P\_}1} & {MI}_{{XZ}\; 2{P\_}0} \\{MI}_{{XZ}\; 1{P\_}8} & {MI}_{{XZ}\; 1{P\_}7} & {MI}_{{XZ}\; 1{P\_}6} & {MI}_{{XZ}\; 1{P\_}5} & {MI}_{{XZ}\; 1{P\_}4} & {MI}_{{XZ}\; 1{P\_}3} & {MI}_{{XZ}\; 1{P\_}2} & {MI}_{{XZ}\; 1{P\_}1} & {MI}_{{XZ}\; 1{P\_}0} \\{MI}_{{XZ}\; 0{P\_}8} & {MI}_{{XZ}\; 0{P\_}7} & {MI}_{{XZ}\; 0{P\_}6} & {MI}_{{XZ}\; 0{P\_}5} & {MI}_{{XZ}\; 0{P\_}4} & {MI}_{{XZ}\; 0{P\_}3} & {MI}_{{XZ}\; 0{P\_}2} & {MI}_{{XZ}\; 0{P\_}1} & {MI}_{{XZ}\; 0{P\_}0} \\{MI}_{{XZ}\; 2{M\_}8} & {MI}_{{XZ}\; 2{M\_}7} & {MI}_{{XZ}\; 2{M\_}6} & {MI}_{{XZ}\; 2{M\_}5} & {MI}_{{XZ}\; 2{M\_}4} & {MI}_{{XZ}\; 2{M\_}3} & {MI}_{{XZ}\; 2{M\_}2} & {MI}_{{XZ}\; 2{M\_}1} & {MI}_{{XZ}\; 2{M\_}0} \\{MI}_{{XZ}\; 1{M\_}8} & {MI}_{{XZ}\; 1{M\_}7} & {MI}_{{XZ}\; 1{M\_}6} & {MI}_{{XZ}\; 1{M\_}5} & {MI}_{{XZ}\; 1{M\_}4} & {MI}_{{XZ}\; 1{M\_}3} & {MI}_{{XZ}\; 1{M\_}2} & {MI}_{{XZ}\; 1{M\_}1} & {MI}_{{XZ}\; 1{M\_}0} \\{MI}_{{XZ}\; 0{M\_}8} & {MI}_{{XZ}\; 0{M\_}7} & {MI}_{{XZ}\; 0{M\_}6} & {MI}_{{XZ}\; 0{M\_}5} & {MI}_{{XZ}\; 0{M\_}4} & {MI}_{{XZ}\; 0{M\_}3} & {MI}_{{XZ}\; 0{M\_}2} & {MI}_{{XZ}\; 0{M\_}1} & {MI}_{{XZ}\; 0{M\_}0} \\{M\; \theta_{{XZ}\; 2{P\_}8}} & {M\; \theta_{{XZ}\; 2{P\_}7}} & {M\; \theta_{{XZ}\; 2{P\_}6}} & {M\; \theta_{{XZ}\; 2{P\_}5}} & {M\; \theta_{{XZ}\; 2\; {P\_}4}} & {M\; \theta_{{XZ}\; 2{P\_}3}} & {M\; \theta_{{XZ}\; 2{P\_}2}} & {M\; \theta_{{XZ}\; 2{P\_}1}} & {M\; \theta_{{XZ}\; 2{P\_}0}} \\{M\; \theta_{{XZ}\; 1{P\_}8}} & {M\; \theta_{{XZ}\; 1{P\_}7}} & {M\; \theta_{{XZ}\; 1{P\_}6}} & {M\; \theta_{{XZ}\; 1{P\_}5}} & {M\; \theta_{{XZ}\; 1{P\_}4}} & {M\; \theta_{{XZ}\; 1{P\_}3}} & {M\; \theta_{{XZ}\; 1{P\_}2}} & {M\; \theta_{{XZ}\; 1{P\_}1}} & {M\; \theta_{{XZ}\; 1{P\_}0}} \\{M\; \theta_{{XZ}\; 0{P\_}8}} & {M\; \theta_{{XZ}\; 0{P\_}7}} & {M\; \theta_{{XZ}\; 0{P\_}6}} & {M\; \theta_{{XZ}\; 0{P\_}5}} & {M\; \theta_{{XZ}\; 0{P\_}4}} & {M\; \theta_{{XZ}\; 0{P\_}3}} & {M\; \theta_{{XZ}\; 0{P\_}2}} & {M\; \theta_{{XZ}\; 0{P\_}\; 1}} & {M\; \theta_{{XZ}\; 0{P\_}0}} \\{M\; \theta_{{XZ}\; 2{M\_}8}} & {M\; \theta_{{XZ}\; 2{M\_}7}} & {M\; \theta_{{XZ}\; 2{M\_}6}} & {M\; \theta_{X\; Z\; 2{M\_}5}} & {M\; \theta_{{XZ}\; 2{M\_}4}} & {M\; \theta_{{XZ}\; 2{M\_}3}} & {M\; \theta_{{XZ}\; 2{M\_}2}} & {M\; \theta_{{XZ}\; 2{M\_}1}} & {M\; \theta_{{XZ}\; 2{M\_}0}} \\{M\; \theta_{{XZ}\; 1{M\_}8}} & {M\; \theta_{{XZ}\; 1{M\_}7}} & {M\; \theta_{{XZ}\; 1{M\_}6}} & {M\; \theta_{{XZ}\; 1{M\_}5}} & {M\; \theta_{{XZ}\; 1{M\_}4}} & {M\; \theta_{{XZ}\; 1{M\_}3}} & {M\; \theta_{{XZ}\; 1{M\_}2}} & {M\; \theta_{{XZ}\; 1{M\_}1}} & {M\; \theta_{{XZ}\; 1{M\_}0}} \\{M\; \theta_{{XZ}\; 0{M\_}8}} & {M\; \theta_{{XZ}\; 0{M\_}7}} & {M\; \theta_{{XZ}\; 0{M\_}6}} & {M\; \theta_{{XZ}\; 0{M\_}5}} & {M\; \theta_{{XZ}\; 0{M\_}4}} & {M\; \theta_{{XZ}\; 0{M\_}3}} & {M\; \theta_{{XZ}\; 0{M\_}2}} & {M\; \theta_{{XZ}\; 0{M\_}1}} & {M\; \theta_{{XZ}\; 0{M\_}0}}\end{pmatrix}\begin{pmatrix}{s_{X}^{2} \cdot s_{Z}^{2}} \\{s_{X}^{2} \cdot s_{Z}} \\{s_{X} \cdot s_{Z}^{2}} \\s_{X}^{2} \\{s_{X} \cdot s_{Z}} \\s_{Z}^{2} \\s_{X} \\s_{Z} \\1\end{pmatrix}}} & (22)\end{matrix}$

Here, since the intercepts I_(P) and I_(M), the angles θ_(P) and θ_(M),the frequency f_(XZ) of the scanning movement and the scale value S areknown in the formulae (21) and (22), the coefficient vector M_(XZ) to bemultiplied with the scale value S based on the phase difference φ_(XZ)in the formula (22) can be calculated.

Further, the coefficient vectors M_(XY) and M_(YZ) to be multiplied withthe scale value S based on the phase differences φ_(XY) and φ_(YZ) arecalculated in the same manner as the calculation of the coefficientvector M_(XZ), thereby calculating all of the coefficient vectorsM_(XZ), M_(XY) and M_(YZ) in the formulae (19-1) to (19-3).

Then, as shown in the formulae (19-1) to (19-3), the accelerationcorrection-amount calculating unit 83 calculates a coefficient vectorM_(f) based on the calculated coefficient vectors M_(XZ), M_(XY) andM_(YZ) and the scale value S acquired by the displacement acquiring unit52. Further, as shown in the formulae (17) and (18), the phasedifference correction-amount calculating unit 83 calculates thephase-difference correction-amount Cφ based on the calculatedcoefficient vector M_(f), the frequency f(f_(XY), f_(XZ), f_(YZ))calculated by the frequency-estimating unit 72 and the swivel lengthL(l_(X), l_(Y), l_(Z)).

Here, as described above, the formula (18) is classified by theconditional expressions (18-1) to (18-3). This is because theinclinations S_(P) and S_(M) of different approximate linear lines arederived in accordance with the difference in the orientation of theprobe 21 (i.e. when the probe 21 is oriented in the +X,Y,Z-axisdirections and when the probe 21 is oriented in the −X,Y,Z-axisdirections).

FIG. 16 is an illustration showing a relationship among acorrection-amount calculating unit 8A, a displacement correcting unit531A and a displacement synthesizing unit 532.

As described above, the correction-amount calculating unit 8A calculatesthe correction amount (the translation-correction amount CT, therotation-correction amount CR and the phase-difference correction amountCφ) based on the acceleration A, the swivel length L and the scale valueS (see FIG. 16).

As shown in FIG. 16, the displacement correcting unit 531A corrects thescale value S acquired by the displacement acquiring unit 52 based onthe correction amount calculated by the correction-amount calculatingunit 8A.

The correction using the phase-difference correction-amount Cφ may bemade while setting one of the X, Y and Z-axes as a reference axis and bycorrecting the phase difference with the other two axes. The correctionaccuracy can be enhanced by changing the reference axis in accordancewith the absolute value of the phase-difference correction-amountCφ(Cφ_(XY), Cφ_(XZ), Cφ_(YZ)). Specifically, when the absolute value ofthe Cφ_(XY) is the smallest, the scale value S is corrected based on thefollowing formula (23-1) while setting the Z-axis as the reference axis.When the absolute value of the Cφ_(XZ) is the smallest, the scale valueS is corrected based on the following formula (23-2) while setting theY-axis as the reference axis. When the absolute value of the Cφ_(YZ) isthe smallest, the scale value S is corrected based on the followingformula (23-3) while setting the X-axis as the reference axis.

$\begin{matrix}{\begin{pmatrix}{C\; \varphi \; S_{X}} \\{C\; \varphi \; S_{Y}} \\{C\; \varphi \; S_{Z}}\end{pmatrix} = {\begin{pmatrix}{\cos \left( {C\; \varphi_{XZ}} \right)} & 0 & 0 \\0 & {\cos \left( {C\; \varphi_{YZ}} \right)} & 0 \\{\sin \left( {C\; \varphi_{XZ}} \right)} & {\sin \left( {C\; \varphi_{YZ}} \right)} & 1\end{pmatrix}\begin{pmatrix}s_{X} \\s_{Y} \\s_{Z}\end{pmatrix}}} & \left( {23\text{-}1} \right) \\{\begin{pmatrix}{C\; \varphi \; S_{X}} \\{C\; \varphi \; S_{Y}} \\{C\; \varphi \; S_{Z}}\end{pmatrix} = {\begin{pmatrix}{\cos \left( {C\; \varphi_{XY}} \right)} & 0 & 0 \\{\sin \left( {C\; \varphi_{XY}} \right)} & 1 & {\sin \left( {{- C}\; \varphi_{YZ}} \right)} \\0 & 0 & {\cos \left( {{- C}\; \varphi_{YZ}} \right)}\end{pmatrix}\begin{pmatrix}s_{X} \\s_{Y} \\s_{Z}\end{pmatrix}}} & \left( {23\text{-}2} \right) \\{\begin{pmatrix}{C\; \varphi \; S_{X}} \\{C\; \varphi \; S_{Y}} \\{C\; \varphi \; S_{Z}}\end{pmatrix} = {\begin{pmatrix}1 & {\sin \left( {{- C}\; \varphi_{XY}} \right)} & {\sin \left( {{- C}\; \varphi_{XZ}} \right)} \\0 & {\cos \left( {{- C}\; \varphi_{XY}} \right)} & 0 \\0 & 0 & {\cos \left( {{- C}\; \varphi_{XZ}} \right)}\end{pmatrix}\begin{pmatrix}s_{X} \\s_{Y} \\s_{Z}\end{pmatrix}}} & \left( {23\text{-}3} \right)\end{matrix}$

Incidentally, as shown in FIG. 16, the displacement correcting unit 531Acorrects the scale value S based on the formula (23-1) while setting theZ-axis as the reference axis. The displacement correcting unit 531Afurther corrects a phase-difference correction-scale value CφS(CφS_(X),CφS_(Y), CφS_(Z)) corrected based on the phase-differencecorrection-amount Cφ, based on the translation-correction amount CT andthe rotation-correction amount CR according to the following formula(24).

$\begin{matrix}\left. \begin{matrix}{{CS}_{X} = {{C\; \varphi \; S_{X}} + {CT}_{X} + {CR}_{X}}} \\{{CS}_{Y} = {{C\; \varphi \; S_{Y}} + {CT}_{Y} + {CR}_{Y}}} \\{{CS}_{Z} = {{C\; \varphi \; S_{Z}} + {CT}_{Z} + {CR}_{Z}}}\end{matrix} \right\} & (24)\end{matrix}$

Then, the displacement synthesizing unit 532 synthesizes a correctedscale value CS corrected by the displacement correcting unit 531A andthe probe value P acquired by the displacement acquiring unit 52 tocalculate the measurement value (x, y, z).

Here, as shown in FIGS. 11A, 11B and 12, all of the measurement resultsobtained by measuring the surface profile of the object W aftercorrecting the scale value S by the displacement correcting unit 531 ofthe first exemplary embodiment exhibited an ellipsoidal shape. This isbecause an error occurs on the measurement value of the coordinatemeasuring machines 1 and 1A provided with a plurality of movement axesfor scanning movement of the probe 21 being influenced by the phasedifference between the respective movement axes on account of adifference in the response characteristics of the respective movementaxes.

FIGS. 17A, 17B and 18 illustrate the measurement results when thesurface profile of the object W was measured while correcting the scalevalue S by the displacement correcting unit 531A. FIGS. 17A, 17B and 18respectively correspond to FIGS. 11A, 11B and 12.

As shown in FIGS. 17A, 17B and 18, the respective measurement resultsexhibited substantially the same shape as the profile data in any of theinstances. Further, the respective measurement results exhibitedapproximately circular shape in any of the instances. This is becausethe position error of the measurement piece 211A was corrected based onthe phase-difference correction-amount Cφ calculated by thecorrection-amount calculating unit 8A.

According to this exemplary embodiment, following advantages and effectscan be attained as well as the same advantages and effects in the abovefirst exemplary embodiment.

(3) The coordinate measuring machine 1A includes the phase differencecorrection-amount calculating unit 83 that calculates thephase-difference correction-amount Cφ for correcting the phasedifference between respective movement axes based on the frequency f ofthe scanning movement when the probe 21 is circulated at a constantangular velocity, so that the phase difference between the respectivemovement axes can be appropriately corrected and the error in themeasurement value can be further properly corrected.

Incidentally, the scope of the invention is not limited to the aboveexemplary embodiments, but includes modifications and improvements thatare compatible with an object of the invention.

In the above exemplary embodiments, the coordinate measuring machines 1and 1A include the contact-type probe 21 provided with the measurementpiece 211A to be in contact with the surface of the object W. However,the coordinate measuring machine may be provided with a non-contactprobe such as a laser device and a camera. In other words, it issufficient for the coordinate measuring machine to be provided with aprobe having a measurement piece.

The moving mechanism 22 includes the three movement axes for moving theprobe 21 in the mutually orthogonal X, Y, Z-axes directions. Incontrast, the moving mechanism may be provided with one or two movementaxes, which may not be orthogonal with each other. In sum, any movingmechanism may be used as long as the prove can conduct the scanningmovement.

In the above exemplary embodiments, the correction-amount calculatingunits 8 and 8A calculate the translation-correction amount CT, therotation-correction amount CR and the phase-difference correction-amountCφ by modeling the acceleration A, the frequency f, the swivel length Land the scale value S in polynomial equations. In contrast, thecorrection-amount calculating unit may calculate thetranslation-correction amount, the rotation-correction amount and thephase-difference correction-amount by modeling with a spline functionand the like, and may calculate the translation-correction amount, therotation-correction amount and the phase-difference correction-amountwith parameter(s) different from acceleration, frequency, swivel lengthand scale value. In sum, any arrangement is possible for thecorrection-amount calculating unit as long as the correction-amountcalculating unit can calculate the translation-correction amount, therotation-correction amount and the phase-difference correction-amountbased on parameter(s) such as acceleration that can be associated withthe correction amount.

The correction-amount calculating units 8 and 8A calculate thecorrection amount based on the acceleration A and the frequency fcalculated by the movement-estimating unit 7 and 7A. However, thecorrection-amount calculating unit may calculate the correction amountbased on acceleration and the like detected by an acceleration sensor,position sensor and the like. However, when acceleration and the like isdetected with the use of such sensor(s), a sampling error occurs whenthe output signal from the sensor(s) is sampled. In addition, it is noteasy to provide the sensor(s) on the probe. Accordingly, the arrangementof the above exemplary embodiment in which the correction amount iscalculated based on acceleration and the like calculated by themovement-estimating unit is preferable.

In the above exemplary embodiments, the coordinate measuring machines 1and 1A include the probe 21 provided with the rotation mechanism 213 forchanging the attitude of the probe 21 by rotating the support mechanism212 and the stylus 211. On the other hand, the coordinate measuringmachine may have a probe not provided with the rotation mechanism. Inthis instance, the reference point may be set at a base point of theprobe.

In the second exemplary embodiment, the phase differencecorrection-amount calculating unit 83 calculates the phase-differencecorrection-amount Cφ by coordinate conversion of the scale value S. Onthe other hand, the phase difference correction-amount calculating unitmay calculate the phase difference correction-amount for correcting, forinstance, time delay of the respective movement axes. In other words,any arrangement is possible as long as the phase differencecorrection-amount calculating unit can calculate the phase differencecorrection-amount for correcting the phase difference between therespective movement axes.

The entire disclosure of Japanese Patent Application No. 2008-125980,filed May 13, 2008, is expressly incorporated by reference herein.

1. A coordinate measuring instrument, comprising: a probe that has ameasurement piece that moves along a surface of an object; a movingmechanism that holds the probe and effects a scanning movement of theprobe; and a controller that controls the moving mechanism, thecontroller comprising: a displacement acquiring unit that acquires adisplacement of the moving mechanism; a correction-amount calculatingunit that calculates a correction amount for correcting a position errorof the measurement piece caused by the scanning movement of the probe;and a correcting unit that corrects the position error of themeasurement piece based on the displacement of the moving mechanismacquired by the displacement acquiring unit and the correction amountcalculated by the correction-amount calculating unit, thecorrection-amount calculating unit calculating: a translation-correctionamount for correcting a translation error of the probe at a referencepoint on the probe; and a rotation-correction amount for correcting arotation error of the probe generated according to a rotation angle ofthe probe around the reference point and a length of the probe from thereference point to the measurement piece.
 2. The coordinate measuringmachine according to claim 1, wherein the correction-amount calculatingunit calculates at least one of the translation-correction amount andthe rotation-correction amount based on an acceleration of the scanningmovement of the probe.
 3. The coordinate measuring machine according toclaim 1, wherein the moving mechanism includes a plurality of movementaxes along which the scanning movement of the probe is effected, and thecorrection-amount calculating unit includes a phase differencecorrection-amount calculating unit that calculates a phase-differencecorrection-amount for correcting a phase difference between therespective movement axes.
 4. The coordinate measuring machine accordingto claim 3, wherein the phase difference correction-amount calculatingunit calculates the phase-difference correction-amount based on afrequency of the scanning movement when the probe is circulated at aconstant angular velocity.
 5. The coordinate measuring machine accordingto claim 2, wherein the moving mechanism includes a plurality ofmovement axes along which the scanning movement of the probe iseffected, and the correction-amount calculating unit includes a phasedifference correction-amount calculating unit that calculates aphase-difference correction-amount for correcting a phase differencebetween the movement axes.
 6. The coordinate measuring machine accordingto claim 5, wherein the phase difference correction-amount calculatingunit calculates the phase-difference correction-amount based on afrequency of the scanning movement when the probe is circulated at aconstant angular velocity.
 7. The coordinate measuring machine accordingto claim 1, wherein the correction-amount calculating unit calculatesthe correction amount based on the displacement of the moving mechanismacquired by the displacement acquiring unit.
 8. The coordinate measuringmachine according to claim 2, wherein the correction-amount calculatingunit calculates the correction amount based on the displacement of themoving mechanism acquired by the displacement acquiring unit.
 9. Thecoordinate measuring machine according to claim 3, wherein thecorrection-amount calculating unit calculates the correction amountbased on the displacement of the moving mechanism acquired by thedisplacement acquiring unit.
 10. The coordinate measuring machineaccording to claim 4, wherein the correction-amount calculating unitcalculates the correction amount based on the displacement of the movingmechanism acquired by the displacement acquiring unit.
 11. Thecoordinate measuring machine according to claim 5, wherein thecorrection-amount calculating unit calculates the correction amountbased on the displacement of the moving mechanism acquired by thedisplacement acquiring unit.
 12. The coordinate measuring machineaccording to claim 6, wherein the correction-amount calculating unitcalculates the correction amount based on the displacement of the movingmechanism acquired by the displacement acquiring unit.